!function(t,e,n){"use strict";function r(t){return function(){var e,n,r=arguments[0],i="["+(t?t+":":"")+r+"] ",a=arguments[1],o=arguments,s=function(t){return"function"==typeof t?t.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof t?"undefined":"string"!=typeof t?JSON.stringify(t):t};for(e=i+a.replace(/\{\d+\}/g,function(t){var e,n=+t.slice(1,-1);return n+2<o.length?(e=o[n+2],"function"==typeof e?e.toString().replace(/ ?\{[\s\S]*$/,""):"undefined"==typeof e?"undefined":"string"!=typeof e?L(e):e):t}),e=e+"\nhttp://errors.angularjs.org/1.3.0-beta.19/"+(t?t+"/":"")+r,n=2;n<arguments.length;n++)e=e+(2==n?"?":"&")+"p"+(n-2)+"="+encodeURIComponent(s(arguments[n]));return new Error(e)}}function i(t){if(null==t||C(t))return!1;var e=t.length;return 1===t.nodeType&&e?!0:b(t)||Lr(t)||0===e||"number"==typeof e&&e>0&&e-1 in t}function a(t,e,n){var r,o;if(t)if(k(t))for(r in t)"prototype"==r||"length"==r||"name"==r||t.hasOwnProperty&&!t.hasOwnProperty(r)||e.call(n,t[r],r);else if(Lr(t)||i(t)){var s="object"!=typeof t;for(r=0,o=t.length;o>r;r++)(s||r in t)&&e.call(n,t[r],r)}else if(t.forEach&&t.forEach!==a)t.forEach(e,n);else for(r in t)t.hasOwnProperty(r)&&e.call(n,t[r],r);return t}function o(t){var e=[];for(var n in t)t.hasOwnProperty(n)&&e.push(n);return e.sort()}function s(t,e,n){for(var r=o(t),i=0;i<r.length;i++)e.call(n,t[r[i]],r[i]);return r}function u(t){return function(e,n){t(n,e)}}function c(){return++Fr}function l(t,e){e?t.$$hashKey=e:delete t.$$hashKey}function f(t){var e=t.$$hashKey;return a(arguments,function(e){e!==t&&a(e,function(e,n){t[n]=e})}),l(t,e),t}function h(t){return parseInt(t,10)}function d(t,e){return f(new(f(function(){},{prototype:t})),e)}function p(){}function $(t){return t}function g(t){return function(){return t}}function m(t){return"undefined"==typeof t}function v(t){return"undefined"!=typeof t}function y(t){return null!==t&&"object"==typeof t}function b(t){return"string"==typeof t}function w(t){return"number"==typeof t}function x(t){return"[object Date]"===Ur.call(t)}function k(t){return"function"==typeof t}function S(t){return"[object RegExp]"===Ur.call(t)}function C(t){return t&&t.window===t}function A(t){return t&&t.$evalAsync&&t.$watch}function E(t){return"[object File]"===Ur.call(t)}function O(t){return"[object Blob]"===Ur.call(t)}function j(t){return t&&k(t.then)}function M(t){return!(!t||!(t.nodeName||t.prop&&t.attr&&t.find))}function N(t){var e,n={},r=t.split(",");for(e=0;e<r.length;e++)n[r[e]]=!0;return n}function T(t,e,n){var r=[];return a(t,function(t,i,a){r.push(e.call(n,t,i,a))}),r}function P(t,e){return-1!=V(t,e)}function V(t,e){if(t.indexOf)return t.indexOf(e);for(var n=0;n<t.length;n++)if(e===t[n])return n;return-1}function D(t,e){var n=V(t,e);return n>=0&&t.splice(n,1),e}function q(t,e,n,r){if(C(t)||A(t))throw Ir("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");if(e){if(t===e)throw Ir("cpi","Can't copy! Source and destination are identical.");if(n=n||[],r=r||[],y(t)){var i=V(n,t);if(-1!==i)return r[i];n.push(t),r.push(e)}var o;if(Lr(t)){e.length=0;for(var s=0;s<t.length;s++)o=q(t[s],null,n,r),y(t[s])&&(n.push(t[s]),r.push(o)),e.push(o)}else{var u=e.$$hashKey;Lr(e)?e.length=0:a(e,function(t,n){delete e[n]});for(var c in t)t.hasOwnProperty(c)&&(o=q(t[c],null,n,r),y(t[c])&&(n.push(t[c]),r.push(o)),e[c]=o);l(e,u)}}else if(e=t,t)if(Lr(t))e=q(t,[],n,r);else if(x(t))e=new Date(t.getTime());else if(S(t))e=new RegExp(t.source,t.toString().match(/[^\/]*$/)[0]),e.lastIndex=t.lastIndex;else if(y(t)){var f=Object.create(Object.getPrototypeOf(t));e=q(t,f,n,r)}return e}function R(t,e){if(Lr(t)){e=e||[];for(var n=0,r=t.length;r>n;n++)e[n]=t[n]}else if(y(t)){e=e||{};for(var i in t)("$"!==i.charAt(0)||"$"!==i.charAt(1))&&(e[i]=t[i])}return e||t}function _(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!==t&&e!==e)return!0;var r,i,a,o=typeof t,s=typeof e;if(o==s&&"object"==o){if(!Lr(t)){if(x(t))return x(e)?_(t.getTime(),e.getTime()):!1;if(S(t)&&S(e))return t.toString()==e.toString();if(A(t)||A(e)||C(t)||C(e)||Lr(e))return!1;a={};for(i in t)if("$"!==i.charAt(0)&&!k(t[i])){if(!_(t[i],e[i]))return!1;a[i]=!0}for(i in e)if(!a.hasOwnProperty(i)&&"$"!==i.charAt(0)&&e[i]!==n&&!k(e[i]))return!1;return!0}if(!Lr(e))return!1;if((r=t.length)==e.length){for(i=0;r>i;i++)if(!_(t[i],e[i]))return!1;return!0}}return!1}function U(t,e,n){return t.concat(Rr.call(e,n))}function I(t,e){return Rr.call(t,e||0)}function H(t,e){var n=arguments.length>2?I(arguments,2):[];return!k(e)||e instanceof RegExp?e:n.length?function(){return arguments.length?e.apply(t,n.concat(Rr.call(arguments,0))):e.apply(t,n)}:function(){return arguments.length?e.apply(t,arguments):e.call(t)}}function F(t,r){var i=r;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?i=n:C(r)?i="$WINDOW":r&&e===r?i="$DOCUMENT":A(r)&&(i="$SCOPE"),i}function L(t,e){return"undefined"==typeof t?n:JSON.stringify(t,F,e?"  ":null)}function z(t){return b(t)?JSON.parse(t):t}function B(t){t=Pr(t).clone();try{t.empty()}catch(e){}var n=3,r=Pr("<div>").append(t).html();try{return t[0].nodeType===n?Er(r):r.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(t,e){return"<"+Er(e)})}catch(e){return Er(r)}}function G(t){try{return decodeURIComponent(t)}catch(e){}}function W(t){var e,n,r={};return a((t||"").split("&"),function(t){if(t&&(e=t.replace(/\+/g,"%20").split("="),n=G(e[0]),v(n))){var i=v(e[1])?G(e[1]):!0;Or.call(r,n)?Lr(r[n])?r[n].push(i):r[n]=[r[n],i]:r[n]=i}}),r}function J(t){var e=[];return a(t,function(t,n){Lr(t)?a(t,function(t){e.push(X(n,!0)+(t===!0?"":"="+X(t,!0)))}):e.push(X(n,!0)+(t===!0?"":"="+X(t,!0)))}),e.length?e.join("&"):""}function Q(t){return X(t,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function X(t,e){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,e?"%20":"+")}function Y(t,e){var n,r,i=Wr.length;for(t=Pr(t),r=0;i>r;++r)if(n=Wr[r]+e,b(n=t.attr(n)))return n;return null}function Z(t,e){var n,r,i={};a(Wr,function(e){var i=e+"app";!n&&t.hasAttribute&&t.hasAttribute(i)&&(n=t,r=t.getAttribute(i))}),a(Wr,function(e){var i,a=e+"app";!n&&(i=t.querySelector("["+a.replace(":","\\:")+"]"))&&(n=i,r=i.getAttribute(a))}),n&&(i.strictDi=null!==Y(n,"strict-di"),e(n,r?[r]:[],i))}function K(n,r,i){y(i)||(i={});var o={strictDi:!1};i=f(o,i);var s=function(){if(n=Pr(n),n.injector()){var t=n[0]===e?"document":B(n);throw Ir("btstrpd","App Already Bootstrapped with this Element '{0}'",t.replace(/</,"&lt;").replace(/>/,"&gt;"))}r=r||[],r.unshift(["$provide",function(t){t.value("$rootElement",n)}]),r.unshift("ng");var a=_e(r,i.strictDi);return a.invoke(["$rootScope","$rootElement","$compile","$injector",function(t,e,n,r){t.$apply(function(){e.data("$injector",r),n(e)(t)})}]),a},u=/^NG_DEFER_BOOTSTRAP!/;return t&&!u.test(t.name)?s():(t.name=t.name.replace(u,""),void(Hr.resumeBootstrap=function(t){a(t,function(t){r.push(t)}),s()}))}function te(t,e){return e=e||"_",t.replace(Jr,function(t,n){return(n?e:"")+t.toLowerCase()})}function ee(){var e;Qr||(Vr=t.jQuery,Vr&&Vr.fn.on?(Pr=Vr,f(Vr.fn,{scope:li.scope,isolateScope:li.isolateScope,controller:li.controller,injector:li.injector,inheritedData:li.inheritedData}),e=Vr.cleanData,Vr.cleanData=function(t){if(Br)Br=!1;else for(var n,r=0;null!=(n=t[r]);r++)Vr(n).triggerHandler("$destroy");e(t)}):Pr=ge,Hr.element=Pr,Qr=!0)}function ne(t,e,n){if(!t)throw Ir("areq","Argument '{0}' is {1}",e||"?",n||"required");return t}function re(t,e,n){return n&&Lr(t)&&(t=t[t.length-1]),ne(k(t),e,"not a function, got "+(t&&"object"==typeof t?t.constructor.name||"Object":typeof t)),t}function ie(t,e){if("hasOwnProperty"===t)throw Ir("badname","hasOwnProperty is not a valid {0} name",e)}function ae(t,e,n){if(!e)return t;for(var r,i=e.split("."),a=t,o=i.length,s=0;o>s;s++)r=i[s],t&&(t=(a=t)[r]);return!n&&k(t)?H(a,t):t}function oe(t){var e=t[0],n=t[t.length-1],r=[e];do{if(e=e.nextSibling,!e)break;r.push(e)}while(e!==n);return Pr(r)}function se(){return Object.create(null)}function ue(t){function e(t,e,n){return t[e]||(t[e]=n())}var n=r("$injector"),i=r("ng"),a=e(t,"angular",Object);return a.$$minErr=a.$$minErr||r,e(a,"module",function(){var t={};return function(r,a,o){var s=function(t,e){if("hasOwnProperty"===t)throw i("badname","hasOwnProperty is not a valid {0} name",e)};return s(r,"module"),a&&t.hasOwnProperty(r)&&(t[r]=null),e(t,r,function(){function t(t,n,r,i){return i||(i=e),function(){return i[r||"push"]([t,n,arguments]),c}}if(!a)throw n("nomod","Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.",r);var e=[],i=[],s=[],u=t("$injector","invoke","push",i),c={_invokeQueue:e,_configBlocks:i,_runBlocks:s,requires:a,name:r,provider:t("$provide","provider"),factory:t("$provide","factory"),service:t("$provide","service"),value:t("$provide","value"),constant:t("$provide","constant","unshift"),animation:t("$animateProvider","register"),filter:t("$filterProvider","register"),controller:t("$controllerProvider","register"),directive:t("$compileProvider","directive"),config:u,run:function(t){return s.push(t),this}};return o&&u(o),c})}})}function ce(e){f(e,{bootstrap:K,copy:q,extend:f,equals:_,element:Pr,forEach:a,injector:_e,noop:p,bind:H,toJson:L,fromJson:z,identity:$,isUndefined:m,isDefined:v,isString:b,isFunction:k,isObject:y,isNumber:w,isElement:M,isArray:Lr,version:Xr,isDate:x,lowercase:Er,uppercase:jr,callbacks:{counter:0},$$minErr:r,$$csp:Gr}),Dr=ue(t);try{Dr("ngLocale")}catch(n){Dr("ngLocale",[]).provider("$locale",un)}Dr("ng",["ngLocale"],["$provide",function(t){t.provider({$$sanitizeUri:Dn}),t.provider("$compile",Be).directive({a:Gi,input:la,textarea:la,form:Yi,script:Ya,select:to,style:no,option:eo,ngBind:Oa,ngBindHtml:Ma,ngBindTemplate:ja,ngClass:Na,ngClassEven:Pa,ngClassOdd:Ta,ngCloak:Va,ngController:Da,ngForm:Zi,ngHide:Ba,ngIf:Ra,ngInclude:_a,ngInit:Ia,ngNonBindable:Ha,ngPluralize:Fa,ngRepeat:La,ngShow:za,ngStyle:Ga,ngSwitch:Wa,ngSwitchWhen:Ja,ngSwitchDefault:Qa,ngOptions:Ka,ngTransclude:Xa,ngModel:va,ngList:Sa,ngChange:ya,pattern:wa,ngPattern:wa,required:ba,ngRequired:ba,minlength:ka,ngMinlength:ka,maxlength:xa,ngMaxlength:xa,ngValue:Aa,ngModelOptions:Ea}).directive({ngInclude:Ua}).directive(Wi).directive(qa),t.provider({$anchorScroll:Ue,$animate:bi,$browser:Fe,$cacheFactory:Le,$controller:Je,$document:Qe,$exceptionHandler:Xe,$filter:Gn,$interpolate:on,$interval:sn,$http:en,$httpBackend:rn,$location:wn,$log:xn,$parse:jn,$rootScope:Vn,$q:Mn,$$q:Nn,$sce:In,$sceDelegate:Un,$sniffer:Hn,$templateCache:ze,$timeout:Fn,$window:Bn,$$rAF:Pn,$$asyncCallback:Ie})}])}function le(){return++Zr}function fe(t){return t.replace(ei,function(t,e,n,r){return r?n.toUpperCase():n}).replace(ni,"Moz$1")}function he(t){return!oi.test(t)}function de(t){var e=t.nodeType;return 1===e||!e||9===e}function pe(t,e){var n,r,i,o,s=e.createDocumentFragment(),u=[];if(he(t))u.push(e.createTextNode(t));else{for(n=n||s.appendChild(e.createElement("div")),r=(si.exec(t)||["",""])[1].toLowerCase(),i=ci[r]||ci._default,n.innerHTML=i[1]+t.replace(ui,"<$1></$2>")+i[2],o=i[0];o--;)n=n.lastChild;u=U(u,n.childNodes),n=s.firstChild,n.textContent=""}return s.textContent="",s.innerHTML="",a(u,function(t){s.appendChild(t)}),s}function $e(t,n){n=n||e;var r;return(r=ai.exec(t))?[n.createElement(r[1])]:(r=pe(t,n))?r.childNodes:[]}function ge(t){if(t instanceof ge)return t;var e;if(b(t)&&(t=zr(t),e=!0),!(this instanceof ge)){if(e&&"<"!=t.charAt(0))throw ii("nosel","Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element");return new ge(t)}e?Ae(this,$e(t)):Ae(this,t)}function me(t){return t.cloneNode(!0)}function ve(t,e){if(e||be(t),t.querySelectorAll)for(var n=t.querySelectorAll("*"),r=0,i=n.length;i>r;r++)be(n[r])}function ye(t,e,n,r){if(v(r))throw ii("offargs","jqLite#off() does not support the `selector` argument");var i=we(t),o=i&&i.events,s=i&&i.handle;if(s)if(e)a(e.split(" "),function(e){m(n)?(ti(t,e,o[e]),delete o[e]):D(o[e]||[],n)});else for(e in o)"$destroy"!==e&&ti(t,e,o[e]),delete o[e]}function be(t,e){var r=t.ng339,i=r&&Yr[r];if(i){if(e)return void delete i.data[e];i.handle&&(i.events.$destroy&&i.handle({},"$destroy"),ye(t)),delete Yr[r],t.ng339=n}}function we(t,e){var r=t.ng339,i=r&&Yr[r];return e&&!i&&(t.ng339=r=le(),i=Yr[r]={events:{},data:{},handle:n}),i}function xe(t,e,n){if(de(t)){var r=v(n),i=!r&&e&&!y(e),a=!e,o=we(t,!i),s=o&&o.data;if(r)s[e]=n;else{if(a)return s;if(i)return s&&s[e];f(s,e)}}}function ke(t,e){return t.getAttribute?(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+e+" ")>-1:!1}function Se(t,e){e&&t.setAttribute&&a(e.split(" "),function(e){t.setAttribute("class",zr((" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+zr(e)+" "," ")))})}function Ce(t,e){if(e&&t.setAttribute){var n=(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");a(e.split(" "),function(t){t=zr(t),-1===n.indexOf(" "+t+" ")&&(n+=t+" ")}),t.setAttribute("class",zr(n))}}function Ae(t,e){if(e)if(e.nodeType)t[t.length++]=e;else{var n=e.length;if("number"==typeof n&&e.window!==e){if(n)for(var r=0;n>r;r++)t[t.length++]=e[r]}else t[t.length++]=e}}function Ee(t,e){return Oe(t,"$"+(e||"ngController")+"Controller")}function Oe(t,e,r){9==t.nodeType&&(t=t.documentElement);for(var i=Lr(e)?e:[e];t;){for(var a=0,o=i.length;o>a;a++)if((r=Pr.data(t,i[a]))!==n)return r;t=t.parentNode||11===t.nodeType&&t.host}}function je(t){for(ve(t,!0);t.firstChild;)t.removeChild(t.firstChild)}function Me(t,e){e||ve(t);var n=t.parentNode;n&&n.removeChild(t)}function Ne(t,e){var n=fi[e.toLowerCase()];return n&&hi[qr(t)]&&n}function Te(t,e){var n=t.nodeName;return("INPUT"===n||"TEXTAREA"===n)&&di[e]}function Pe(t,e){var n=function(n,r){n.isDefaultPrevented=function(){return n.defaultPrevented};var i=e[r||n.type],a=i?i.length:0;if(a){a>1&&(i=R(i));for(var o=0;a>o;o++)i[o].call(t,n)}};return n.elem=t,n}function Ve(t,e){var r,i=typeof t;return"function"==i||"object"==i&&null!==t?"function"==typeof(r=t.$$hashKey)?r=t.$$hashKey():r===n&&(r=t.$$hashKey=(e||c)()):r=t,i+":"+r}function De(t,e){if(e){var n=0;this.nextUid=function(){return++n}}a(t,this.put,this)}function qe(t){var e=t.toString().replace(mi,""),n=e.match(pi);return n?"function("+(n[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function Re(t,e,n){var r,i,o,s;if("function"==typeof t){if(!(r=t.$inject)){if(r=[],t.length){if(e)throw b(n)&&n||(n=t.name||qe(t)),vi("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);i=t.toString().replace(mi,""),o=i.match(pi),a(o[1].split($i),function(t){t.replace(gi,function(t,e,n){r.push(n)})})}t.$inject=r}}else Lr(t)?(s=t.length-1,re(t[s],"fn"),r=t.slice(0,s)):re(t,"fn",!0);return r}function _e(t,e){function r(t){return function(e,n){return y(e)?void a(e,u(t)):t(e,n)}}function i(t,e){if(ie(t,"service"),(k(e)||Lr(e))&&(e=S.instantiate(e)),!e.$get)throw vi("pget","Provider '{0}' must define $get factory method.",t);return x[t+m]=e}function o(t,e){return i(t,{$get:e})}function s(t,e){return o(t,["$injector",function(t){return t.instantiate(e)}])}function c(t,e){return o(t,g(e))}function l(t,e){ie(t,"constant"),x[t]=e,C[t]=e}function f(t,e){var n=S.get(t+m),r=n.$get;n.$get=function(){var t=A.invoke(r,n);return A.invoke(e,null,{$delegate:t})}}function h(t){var e,n=[];return a(t,function(t){function r(t){var e,n;for(e=0,n=t.length;n>e;e++){var r=t[e],i=S.get(r[0]);i[r[1]].apply(i,r[2])}}if(!w.get(t)){w.put(t,!0);try{b(t)?(e=Dr(t),n=n.concat(h(e.requires)).concat(e._runBlocks),r(e._invokeQueue),r(e._configBlocks)):k(t)?n.push(S.invoke(t)):Lr(t)?n.push(S.invoke(t)):re(t,"module")}catch(i){throw Lr(t)&&(t=t[t.length-1]),i.message&&i.stack&&-1==i.stack.indexOf(i.message)&&(i=i.message+"\n"+i.stack),vi("modulerr","Failed to instantiate module {0} due to:\n{1}",t,i.stack||i.message||i)}}}),n}function d(t,n){function r(e){if(t.hasOwnProperty(e)){if(t[e]===$)throw vi("cdep","Circular dependency found: {0}",e+" <- "+v.join(" <- "));return t[e]}try{return v.unshift(e),t[e]=$,t[e]=n(e)}catch(r){throw t[e]===$&&delete t[e],r}finally{v.shift()}}function i(t,n,i,a){"string"==typeof i&&(a=i,i=null);var o,s,u,c=[],l=Re(t,e,a);for(s=0,o=l.length;o>s;s++){if(u=l[s],"string"!=typeof u)throw vi("itkn","Incorrect injection token! Expected service name as string, got {0}",u);c.push(i&&i.hasOwnProperty(u)?i[u]:r(u))}return Lr(t)&&(t=t[o]),t.apply(n,c)}function a(t,e,n){var r,a,o=function(){};return o.prototype=(Lr(t)?t[t.length-1]:t).prototype,r=new o,a=i(t,r,e,n),y(a)||k(a)?a:r}return{invoke:i,instantiate:a,get:r,annotate:Re,has:function(e){return x.hasOwnProperty(e+m)||t.hasOwnProperty(e)}}}e=e===!0;var $={},m="Provider",v=[],w=new De([],!0),x={$provide:{provider:r(i),factory:r(o),service:r(s),value:r(c),constant:r(l),decorator:f}},S=x.$injector=d(x,function(){throw vi("unpr","Unknown provider: {0}",v.join(" <- "))},e),C={},A=C.$injector=d(C,function(t){var e=S.get(t+m);return A.invoke(e.$get,e,n,t)},e);return a(h(t),function(t){A.invoke(t||p)}),A}function Ue(){var t=!0;this.disableAutoScrolling=function(){t=!1},this.$get=["$window","$location","$rootScope",function(e,n,r){function i(t){var e=null;return a(t,function(t){e||"a"!==qr(t)||(e=t)}),e}function o(){var t,r=n.hash();r?(t=s.getElementById(r))?t.scrollIntoView():(t=i(s.getElementsByName(r)))?t.scrollIntoView():"top"===r&&e.scrollTo(0,0):e.scrollTo(0,0)}var s=e.document;return t&&r.$watch(function(){return n.hash()},function(){r.$evalAsync(o)}),o}]}function Ie(){this.$get=["$$rAF","$timeout",function(t,e){return t.supported?function(e){return t(e)}:function(t){return e(t,0,!1)}}]}function He(t,e,r,i){function o(t){try{t.apply(null,I(arguments,1))}finally{if(v--,0===v)for(;y.length;)try{y.pop()()}catch(e){r.error(e)}}}function s(t,e){!function n(){a(x,function(t){t()}),w=e(n,t)}()}function u(){C=null,k!=c.url()&&(k=c.url(),a(A,function(t){t(c.url())}))}var c=this,l=e[0],f=t.location,h=t.history,d=t.setTimeout,$=t.clearTimeout,g={};c.isMock=!1;var v=0,y=[];c.$$completeOutstandingRequest=o,c.$$incOutstandingRequestCount=function(){v++},c.notifyWhenNoOutstandingRequests=function(t){a(x,function(t){t()}),0===v?t():y.push(t)};var w,x=[];c.addPollFn=function(t){return m(w)&&s(100,d),x.push(t),t};var k=f.href,S=e.find("base"),C=null;c.url=function(e,n){if(f!==t.location&&(f=t.location),h!==t.history&&(h=t.history),e){if(k==e)return;return k=e,i.history?n?h.replaceState(null,"",e):(h.pushState(null,"",e),S.attr("href",S.attr("href"))):(C=e,n?f.replace(e):f.href=e),c}return C||f.href.replace(/%27/g,"'")};var A=[],E=!1;c.onUrlChange=function(e){return E||(i.history&&Pr(t).on("popstate",u),i.hashchange?Pr(t).on("hashchange",u):c.addPollFn(u),E=!0),A.push(e),e},c.baseHref=function(){var t=S.attr("href");return t?t.replace(/^(https?\:)?\/\/[^\/]*/,""):""};var O={},j="",M=c.baseHref();c.cookies=function(t,e){var i,a,o,s,u;if(!t){if(l.cookie!==j)for(j=l.cookie,a=j.split("; "),O={},s=0;s<a.length;s++)o=a[s],u=o.indexOf("="),u>0&&(t=decodeURIComponent(o.substring(0,u)),O[t]===n&&(O[t]=decodeURIComponent(o.substring(u+1))));return O}e===n?l.cookie=encodeURIComponent(t)+"=;path="+M+";expires=Thu, 01 Jan 1970 00:00:00 GMT":b(e)&&(i=(l.cookie=encodeURIComponent(t)+"="+encodeURIComponent(e)+";path="+M).length+1,i>4096&&r.warn("Cookie '"+t+"' possibly not set or overflowed because it was too large ("+i+" > 4096 bytes)!"))},c.defer=function(t,e){var n;return v++,n=d(function(){delete g[n],o(t)},e||0),g[n]=!0,n},c.defer.cancel=function(t){return g[t]?(delete g[t],$(t),o(p),!0):!1}}function Fe(){this.$get=["$window","$log","$sniffer","$document",function(t,e,n,r){return new He(t,r,e,n)}]}function Le(){this.$get=function(){function t(t,n){function i(t){t!=h&&(d?d==t&&(d=t.n):d=t,a(t.n,t.p),a(t,h),h=t,h.n=null)}function a(t,e){t!=e&&(t&&(t.p=e),e&&(e.n=t))}if(t in e)throw r("$cacheFactory")("iid","CacheId '{0}' is already taken!",t);var o=0,s=f({},n,{id:t}),u={},c=n&&n.capacity||Number.MAX_VALUE,l={},h=null,d=null;return e[t]={put:function(t,e){if(c<Number.MAX_VALUE){var n=l[t]||(l[t]={key:t});i(n)}if(!m(e))return t in u||o++,u[t]=e,o>c&&this.remove(d.key),e},get:function(t){if(c<Number.MAX_VALUE){var e=l[t];if(!e)return;i(e)}return u[t]},remove:function(t){if(c<Number.MAX_VALUE){var e=l[t];if(!e)return;e==h&&(h=e.p),e==d&&(d=e.n),a(e.n,e.p),delete l[t]}delete u[t],o--},removeAll:function(){u={},o=0,l={},h=d=null},destroy:function(){u=null,s=null,l=null,delete e[t]},info:function(){return f({},s,{size:o})}}}var e={};return t.info=function(){var t={};return a(e,function(e,n){t[n]=e.info()}),t},t.get=function(t){return e[t]},t}}function ze(){this.$get=["$cacheFactory",function(t){return t("templates")}]}function Be(t,r){var i={},o="Directive",s=/^\s*directive\:\s*([\d\w_\-]+)\s+(.*)$/,c=/(([\d\w_\-]+)(?:\:([^;]+))?;?)/,l=N("ngSrc,ngSrcset,src,srcset"),h=/^(on[a-z]+|formaction)$/;this.directive=function p(e,n){return ie(e,"directive"),b(e)?(ne(n,"directiveFactory"),i.hasOwnProperty(e)||(i[e]=[],t.factory(e+o,["$injector","$exceptionHandler",function(t,n){var r=[];return a(i[e],function(i,a){try{var o=t.invoke(i);k(o)?o={compile:g(o)}:!o.compile&&o.link&&(o.compile=g(o.link)),o.priority=o.priority||0,o.index=a,o.name=o.name||e,o.require=o.require||o.controller&&o.name,o.restrict=o.restrict||"EA",r.push(o)}catch(s){n(s)}}),r}])),i[e].push(n)):a(e,u(p)),this},this.aHrefSanitizationWhitelist=function(t){return v(t)?(r.aHrefSanitizationWhitelist(t),this):r.aHrefSanitizationWhitelist()},this.imgSrcSanitizationWhitelist=function(t){return v(t)?(r.imgSrcSanitizationWhitelist(t),this):r.imgSrcSanitizationWhitelist()},this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",function(t,r,u,p,g,m,v,w,x,S,C,E){function O(t,e,n,r,i){t instanceof Pr||(t=Pr(t)),a(t,function(e,n){3==e.nodeType&&e.nodeValue.match(/\S+/)&&(t[n]=Pr(e).wrap("<span></span>").parent()[0])});var o=N(t,e,t,n,r,i);M(t,"ng-scope");var s=null;return function(e,n,r,i,a){ne(e,"scope"),s||(s=j(a),"html"!==s&&(t=Pr(Q(s,Pr("<div>").append(t).html()))));var u=n?li.clone.call(t):t;if(r)for(var c in r)u.data("$"+c+"Controller",r[c]);return u.data("$scope",e),n&&n(u,e),o&&o(e,u,u,i),u}}function j(t){var e=t&&t[0];return e&&"foreignobject"!==qr(e)&&e.toString().match(/SVG/)?"svg":"html"}function M(t,e){try{t.addClass(e)}catch(n){}}function N(t,e,r,i,a,o){function s(t,r,i,a){var o,s,u,c,l,f,h,d,g;if(p){var m=r.length;for(g=new Array(m),l=0;m>l;l++)g[l]=r[l]}else g=r;for(l=0,h=0,f=$.length;f>l;h++)u=g[h],o=$[l++],s=$[l++],o?(o.scope?(c=t.$new(),Pr.data(u,"$scope",c)):c=t,d=o.transcludeOnThisElement?T(t,o.transclude,a,o.elementTranscludeOnThisElement):!o.templateOnThisElement&&a?a:!a&&e?T(t,e):null,o(s,c,u,i,d)):s&&s(t,u.childNodes,n,a)}for(var u,c,l,f,h,d,p,$=[],g=0;g<t.length;g++)u=new re,c=P(t[g],[],u,0===g?i:n,a),l=c.length?R(c,t[g],u,e,r,null,[],[],o):null,l&&l.scope&&M(u.$$element,"ng-scope"),h=l&&l.terminal||!(f=t[g].childNodes)||!f.length?null:N(f,l?(l.transcludeOnThisElement||!l.templateOnThisElement)&&l.transclude:e),$.push(l,h),d=d||l||h,p=p||l,o=null;return d?s:null}function T(t,e,n,r){var i=function(i,a,o,s){var u=!1;i||(i=t.$new(),i.$$transcluded=!0,u=!0);var c=e(i,a,o,n,s);return u&&!r&&c.on("$destroy",function(){i.$destroy()}),c};return i}function P(t,e,n,r,i){var a,o,u=t.nodeType,l=n.$attr;switch(u){case 1:H(e,Ge(qr(t)),"E",r,i);for(var f,h,d,p,$,g,m=t.attributes,v=0,y=m&&m.length;y>v;v++){var w=!1,x=!1;if(f=m[v],!Tr||Tr>=8||f.specified){h=f.name,$=zr(f.value),p=Ge(h),(g=se.test(p))&&(h=te(p.substr(6),"-"));var k=p.replace(/(Start|End)$/,"");F(k)&&p===k+"Start"&&(w=h,x=h.substr(0,h.length-5)+"end",h=h.substr(0,h.length-6)),d=Ge(h.toLowerCase()),l[d]=h,(g||!n.hasOwnProperty(d))&&(n[d]=$,Ne(t,d)&&(n[d]=!0)),Y(t,e,$,d,g),H(e,d,"A",r,i,w,x)}}if(o=t.className,b(o)&&""!==o)for(;a=c.exec(o);)d=Ge(a[2]),H(e,d,"C",r,i)&&(n[d]=zr(a[3])),o=o.substr(a.index+a[0].length);break;case 3:J(e,t.nodeValue);break;case 8:try{a=s.exec(t.nodeValue),a&&(d=Ge(a[1]),H(e,d,"M",r,i)&&(n[d]=zr(a[2])))}catch(S){}}return e.sort(G),e}function V(t,e,n){var r=[],i=0;if(e&&t.hasAttribute&&t.hasAttribute(e)){do{if(!t)throw wi("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",e,n);1==t.nodeType&&(t.hasAttribute(e)&&i++,t.hasAttribute(n)&&i--),r.push(t),t=t.nextSibling}while(i>0)}else r.push(t);return Pr(r)}function q(t,e,n){return function(r,i,a,o,s){return i=V(i[0],e,n),t(r,i,a,o,s)}}function R(t,i,o,s,c,l,f,h,d){function p(t,e,n,r){t&&(n&&(t=q(t,n,r)),t.require=x.require,t.directiveName=S,(D===x||x.$$isolateScope)&&(t=K(t,{isolateScope:!0})),f.push(t)),e&&(n&&(e=q(e,n,r)),e.require=x.require,e.directiveName=S,(D===x||x.$$isolateScope)&&(e=K(e,{isolateScope:!0})),h.push(e))}function $(t,e,n,r){var i,o="data",s=!1;if(b(e)){for(;"^"==(i=e.charAt(0))||"?"==i;)e=e.substr(1),"^"==i&&(o="inheritedData"),s=s||"?"==i;if(i=null,r&&"data"===o&&(i=r[e]),i=i||n[o]("$"+e+"Controller"),!i&&!s)throw wi("ctreq","Controller '{0}', required by directive '{1}', can't be found!",e,t);return i}return Lr(e)&&(i=[],a(e,function(e){i.push($(t,e,n,r))})),i}function g(t,e,s,u,c){function l(t,e,r){var i;return A(t)||(r=e,e=t,t=n),J&&(i=w),r||(r=J?k.parent():k),c(t,e,i,r)}var d,p,g,y,b,w,x,k,S;if(i===s?(S=o,k=o.$$element):(k=Pr(s),S=new re(k,o)),D){var C=/^\s*([@=&])(\??)\s*(\w*)\s*$/;b=e.$new(!0),!R||R!==D&&R!==D.$$originalDirective?k.data("$isolateScopeNoTemplate",b):k.data("$isolateScope",b),M(k,"ng-isolate-scope"),a(D.scope,function(t,n){var i,a,o,s,u=t.match(C)||[],c=u[3]||n,l="?"==u[2],f=u[1];switch(b.$$isolateBindings[n]=f+c,f){case"@":S.$observe(c,function(t){b[n]=t}),S.$$observers[c].$$scope=e,S[c]&&(b[n]=r(S[c])(e));break;case"=":if(l&&!S[c])return;a=m(S[c]),s=a.literal?_:function(t,e){return t===e||t!==t&&e!==e},o=a.assign||function(){throw i=b[n]=a(e),wi("nonassign","Expression '{0}' used with directive '{1}' is non-assignable!",S[c],D.name)},i=b[n]=a(e);var h=e.$watch(m(S[c],function(t){return s(t,b[n])||(s(t,i)?o(e,t=b[n]):b[n]=t),i=t}),null,a.literal);b.$on("$destroy",h);break;case"&":a=m(S[c]),b[n]=function(t){return a(e,t)};break;default:throw wi("iscp","Invalid isolate scope definition for directive '{0}'. Definition: {... {1}: '{2}' ...}",D.name,n,t)}})}for(x=c&&l,T&&(w={},a(T,function(t){var n,r={$scope:t===D||t.$$isolateScope?b:e,$element:k,$attrs:S,$transclude:x};y=t.controller,"@"==y&&(y=S[t.name]),n=v(y,r),w[t.name]=n,J||k.data("$"+t.name+"Controller",n),t.controllerAs&&(r.$scope[t.controllerAs]=n)})),d=0,p=f.length;p>d;d++)g=f[d],ee(g,g.isolateScope?b:e,k,S,g.require&&$(g.directiveName,g.require,k,w),x);var E=e;for(D&&(D.template||null===D.templateUrl)&&(E=b),t&&t(E,s.childNodes,n,c),d=h.length-1;d>=0;d--)g=h[d],ee(g,g.isolateScope?b:e,k,S,g.require&&$(g.directiveName,g.require,k,w),x)}d=d||{};for(var w,x,S,C,E,j,N=-Number.MAX_VALUE,T=d.controllerDirectives,D=d.newIsolateScopeDirective,R=d.templateDirective,H=d.nonTlbTranscludeDirective,F=!1,G=!1,J=d.hasElementTranscludeDirective,X=o.$$element=Pr(i),Y=l,te=s,ne=0,ie=t.length;ie>ne;ne++){x=t[ne];var ae=x.$$start,se=x.$$end;if(ae&&(X=V(i,ae,se)),C=n,N>x.priority)break;if((j=x.scope)&&(x.templateUrl||(y(j)?(W("new/isolated scope",D||w,x,X),D=x):W("new/isolated scope",D,x,X)),w=w||x),S=x.name,!x.templateUrl&&x.controller&&(j=x.controller,T=T||{},W("'"+S+"' controller",T[S],x,X),T[S]=x),(j=x.transclude)&&(F=!0,x.$$tlb||(W("transclusion",H,x,X),H=x),"element"==j?(J=!0,N=x.priority,C=X,X=o.$$element=Pr(e.createComment(" "+S+": "+o[S]+" ")),i=X[0],Z(c,I(C),i),te=O(C,s,N,Y&&Y.name,{nonTlbTranscludeDirective:H})):(C=Pr(me(i)).contents(),X.empty(),te=O(C,s))),x.template)if(G=!0,W("template",R,x,X),R=x,j=k(x.template)?x.template(X,o):x.template,j=oe(j),x.replace){if(Y=x,C=he(j)?[]:Pr(Q(x.templateNamespace,zr(j))),i=C[0],1!=C.length||1!==i.nodeType)throw wi("tplrt","Template for directive '{0}' must have exactly one root element. {1}",S,"");Z(c,X,i);var ue={$attr:{}},ce=P(i,[],ue),le=t.splice(ne+1,t.length-(ne+1));D&&U(ce),t=t.concat(ce).concat(le),L(o,ue),ie=t.length}else X.html(j);if(x.templateUrl)G=!0,W("template",R,x,X),R=x,x.replace&&(Y=x),g=z(t.splice(ne,t.length-ne),X,o,c,F&&te,f,h,{controllerDirectives:T,newIsolateScopeDirective:D,templateDirective:R,nonTlbTranscludeDirective:H}),ie=t.length;else if(x.compile)try{E=x.compile(X,o,te),k(E)?p(null,E,ae,se):E&&p(E.pre,E.post,ae,se)}catch(fe){u(fe,B(X))}x.terminal&&(g.terminal=!0,N=Math.max(N,x.priority))}return g.scope=w&&w.scope===!0,g.transcludeOnThisElement=F,g.elementTranscludeOnThisElement=J,g.templateOnThisElement=G,g.transclude=te,d.hasElementTranscludeDirective=J,g}function U(t){for(var e=0,n=t.length;n>e;e++)t[e]=d(t[e],{$$isolateScope:!0})}function H(e,r,a,s,c,l,f){if(r===c)return null;var h=null;if(i.hasOwnProperty(r))for(var p,$=t.get(r+o),g=0,m=$.length;m>g;g++)try{p=$[g],(s===n||s>p.priority)&&-1!=p.restrict.indexOf(a)&&(l&&(p=d(p,{$$start:l,$$end:f})),e.push(p),h=p)}catch(v){u(v)}return h}function F(e){if(i.hasOwnProperty(e))for(var n,r=t.get(e+o),a=0,s=r.length;s>a;a++)if(n=r[a],n.multiElement)return!0;return!1}function L(t,e){var n=e.$attr,r=t.$attr,i=t.$$element;a(t,function(r,i){"$"!=i.charAt(0)&&(e[i]&&e[i]!==r&&(r+=("style"===i?";":" ")+e[i]),t.$set(i,r,!0,n[i]))}),a(e,function(e,a){"class"==a?(M(i,e),t["class"]=(t["class"]?t["class"]+" ":"")+e):"style"==a?(i.attr("style",i.attr("style")+";"+e),t.style=(t.style?t.style+";":"")+e):"$"==a.charAt(0)||t.hasOwnProperty(a)||(t[a]=e,r[a]=n[a])})}function z(t,e,n,r,i,o,s,u){var c,l,h=[],d=e[0],$=t.shift(),m=f({},$,{templateUrl:null,transclude:null,replace:null,$$originalDirective:$}),v=k($.templateUrl)?$.templateUrl(e,n):$.templateUrl,b=$.templateNamespace;return e.empty(),p.get(S.getTrustedResourceUrl(v),{cache:g}).success(function(f){var p,g,w,x;if(f=oe(f),$.replace){if(w=he(f)?[]:Pr(Q(b,zr(f))),p=w[0],1!=w.length||1!==p.nodeType)throw wi("tplrt","Template for directive '{0}' must have exactly one root element. {1}",$.name,v);g={$attr:{}},Z(r,e,p);var k=P(p,[],g);y($.scope)&&U(k),t=k.concat(t),L(n,g)}else p=d,e.html(f);for(t.unshift(m),c=R(t,p,n,i,e,$,o,s,u),a(r,function(t,n){t==p&&(r[n]=e[0])}),l=N(e[0].childNodes,i);h.length;){var S=h.shift(),C=h.shift(),A=h.shift(),E=h.shift(),O=e[0];if(C!==d){var j=C.className;u.hasElementTranscludeDirective&&$.replace||(O=me(p)),Z(A,Pr(C),O),M(Pr(O),j)}x=c.transcludeOnThisElement?T(S,c.transclude,E):E,c(l,S,O,r,x)}h=null}).error(function(t,e,n,r){throw wi("tpload","Failed to load template: {0}",r.url)}),function(t,e,n,r,i){var a=i;h?(h.push(e),h.push(n),h.push(r),h.push(a)):(c.transcludeOnThisElement&&(a=T(e,c.transclude,i)),c(l,e,n,r,a))}}function G(t,e){var n=e.priority-t.priority;return 0!==n?n:t.name!==e.name?t.name<e.name?-1:1:t.index-e.index}function W(t,e,n,r){if(e)throw wi("multidir","Multiple directives [{0}, {1}] asking for {2} on: {3}",e.name,n.name,t,B(r))}function J(t,e){var n=r(e,!0);n&&t.push({priority:0,compile:function(t){var e=t.parent(),r=e.length;return r&&M(t.parent(),"ng-binding"),function(t,e){var i=e.parent(),a=i.data("$binding")||[];a.push(n),i.data("$binding",a),r||M(i,"ng-binding"),t.$watch(n,function(t){e[0].nodeValue=t})}}})}function Q(t,n){switch(t=Er(t||"html")){case"svg":case"math":var r=e.createElement("div");return r.innerHTML="<"+t+">"+n+"</"+t+">",r.childNodes[0].childNodes;default:return n}}function X(t,e){if("srcdoc"==e)return S.HTML;var n=qr(t);return"xlinkHref"==e||"form"==n&&"action"==e||"img"!=n&&("src"==e||"ngSrc"==e)?S.RESOURCE_URL:void 0}function Y(t,e,n,i,a){var o=r(n,!0);if(o){if("multiple"===i&&"select"===qr(t))throw wi("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",B(t));e.push({priority:100,compile:function(){return{pre:function(e,n,s){var u=s.$$observers||(s.$$observers={});if(h.test(i))throw wi("nodomevents","Interpolations for HTML DOM event attributes are disallowed.  Please use the ng- versions (such as ng-click instead of onclick) instead.");
o=r(s[i],!0,X(t,i),l[i]||a),o&&(s[i]=o(e),(u[i]||(u[i]=[])).$$inter=!0,(s.$$observers&&s.$$observers[i].$$scope||e).$watch(o,function(t,e){"class"===i&&t!=e?s.$updateClass(t,e):s.$set(i,t)}))}}}})}}function Z(t,n,r){var i,a,o=n[0],s=n.length,u=o.parentNode;if(t)for(i=0,a=t.length;a>i;i++)if(t[i]==o){t[i++]=r;for(var c=i,l=c+s-1,f=t.length;f>c;c++,l++)f>l?t[c]=t[l]:delete t[c];t.length-=s-1,t.context===o&&(t.context=r);break}u&&u.replaceChild(r,o);var h=e.createDocumentFragment();h.appendChild(o),Pr(r).data(Pr(o).data()),Vr?(Br=!0,Vr.cleanData([o])):delete Pr.cache[o[Pr.expando]];for(var d=1,p=n.length;p>d;d++){var $=n[d];Pr($).remove(),h.appendChild($),delete n[d]}n[0]=r,n.length=1}function K(t,e){return f(function(){return t.apply(null,arguments)},t,e)}function ee(t,e,n,r,i,a){try{t(e,n,r,i,a)}catch(o){u(o,B(n))}}var re=function(t,e){if(e){var n,r,i,a=Object.keys(e);for(n=0,r=a.length;r>n;n++)i=a[n],this[i]=e[i]}else this.$attr={};this.$$element=t};re.prototype={$normalize:Ge,$addClass:function(t){t&&t.length>0&&C.addClass(this.$$element,t)},$removeClass:function(t){t&&t.length>0&&C.removeClass(this.$$element,t)},$updateClass:function(t,e){var n=We(t,e),r=We(e,t);0===n.length?C.removeClass(this.$$element,r):0===r.length?C.addClass(this.$$element,n):C.setClass(this.$$element,n,r)},$set:function(t,e,r,i){var o,s=this.$$element[0],c=Ne(s,t),l=Te(s,t),f=t;c?(this.$$element.prop(t,e),i=c):l&&(this[l]=e,f=l),this[t]=e,i?this.$attr[t]=i:(i=this.$attr[t],i||(this.$attr[t]=i=te(t,"-"))),o=qr(this.$$element),("a"===o&&"href"===t||"img"===o&&"src"===t)&&(this[t]=e=E(e,"src"===t)),r!==!1&&(null===e||e===n?this.$$element.removeAttr(i):this.$$element.attr(i,e));var h=this.$$observers;h&&a(h[f],function(t){try{t(e)}catch(n){u(n)}})},$observe:function(t,e){var n=this,r=n.$$observers||(n.$$observers={}),i=r[t]||(r[t]=[]);return i.push(e),w.$evalAsync(function(){i.$$inter||e(n[t])}),function(){D(i,e)}}};var ie=r.startSymbol(),ae=r.endSymbol(),oe="{{"==ie||"}}"==ae?$:function(t){return t.replace(/\{\{/g,ie).replace(/}}/g,ae)},se=/^ngAttr[A-Z]/;return O}]}function Ge(t){return fe(t.replace(xi,""))}function We(t,e){var n="",r=t.split(/\s+/),i=e.split(/\s+/);t:for(var a=0;a<r.length;a++){for(var o=r[a],s=0;s<i.length;s++)if(o==i[s])continue t;n+=(n.length>0?" ":"")+o}return n}function Je(){var t={},e=!1,i=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(e,n){ie(e,"controller"),y(e)?f(t,e):t[e]=n},this.allowGlobals=function(){e=!0},this.$get=["$injector","$window",function(a,o){return function(s,u){var c,l,f,h;if(b(s)&&(l=s.match(i),f=l[1],h=l[3],s=t.hasOwnProperty(f)?t[f]:ae(u.$scope,f,!0)||(e?ae(o,f,!0):n),re(s,f,!0)),c=a.instantiate(s,u,f),h){if(!u||"object"!=typeof u.$scope)throw r("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",f||s.name,h);u.$scope[h]=c}return c}}]}function Qe(){this.$get=["$window",function(t){return Pr(t.document)}]}function Xe(){this.$get=["$log",function(t){return function(){t.error.apply(t,arguments)}}]}function Ye(t){var e,n,r,i={};return t?(a(t.split("\n"),function(t){r=t.indexOf(":"),e=Er(zr(t.substr(0,r))),n=zr(t.substr(r+1)),e&&(i[e]=i[e]?i[e]+", "+n:n)}),i):i}function Ze(t){var e=y(t)?t:n;return function(n){return e||(e=Ye(t)),n?e[Er(n)]||null:e}}function Ke(t,e,n){return k(n)?n(t,e):(a(n,function(n){t=n(t,e)}),t)}function tn(t){return t>=200&&300>t}function en(){var t=/^\s*(\[|\{[^\{])/,e=/[\}\]]\s*$/,r=/^\)\]\}',?\n/,i={"Content-Type":"application/json;charset=utf-8"},o=this.defaults={transformResponse:[function(n){return b(n)&&(n=n.replace(r,""),t.test(n)&&e.test(n)&&(n=z(n))),n}],transformRequest:[function(t){return!y(t)||E(t)||O(t)?t:L(t)}],headers:{common:{Accept:"application/json, text/plain, */*"},post:R(i),put:R(i),patch:R(i)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},u=this.interceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(t,e,r,i,c,l){function h(t){function e(t){var e=f({},t,{data:Ke(t.data,t.headers,i.transformResponse)});return tn(t.status)?e:c.reject(e)}function r(t){function e(t){var e;a(t,function(n,r){k(n)&&(e=n(),null!=e?t[r]=e:delete t[r])})}var n,r,i,s=o.headers,u=f({},t.headers);s=f({},s.common,s[Er(t.method)]);t:for(n in s){r=Er(n);for(i in u)if(Er(i)===r)continue t;u[n]=s[n]}return e(u),u}var i={method:"get",transformRequest:o.transformRequest,transformResponse:o.transformResponse},s=r(t);f(i,t),i.headers=s,i.method=jr(i.method);var u=function(t){s=t.headers;var n=Ke(t.data,Ze(s),t.transformRequest);return m(n)&&a(s,function(t,e){"content-type"===Er(e)&&delete s[e]}),m(t.withCredentials)&&!m(o.withCredentials)&&(t.withCredentials=o.withCredentials),$(t,n,s).then(e,e)},l=[u,n],h=c.when(i);for(a(S,function(t){(t.request||t.requestError)&&l.unshift(t.request,t.requestError),(t.response||t.responseError)&&l.push(t.response,t.responseError)});l.length;){var d=l.shift(),p=l.shift();h=h.then(d,p)}return h.success=function(t){return h.then(function(e){t(e.data,e.status,e.headers,i)}),h},h.error=function(t){return h.then(null,function(e){t(e.data,e.status,e.headers,i)}),h},h}function d(){a(arguments,function(t){h[t]=function(e,n){return h(f(n||{},{method:t,url:e}))}})}function p(){a(arguments,function(t){h[t]=function(e,n,r){return h(f(r||{},{method:t,url:e,data:n}))}})}function $(r,a,s){function u(t,e,n,r){d&&(tn(t)?d.put(x,[t,e,Ye(n),r]):d.remove(x)),l(e,t,n,r),i.$$phase||i.$apply()}function l(t,e,n,i){e=Math.max(e,0),(tn(e)?$.resolve:$.reject)({data:t,status:e,headers:Ze(n),config:r,statusText:i})}function f(){var t=V(h.pendingRequests,r);-1!==t&&h.pendingRequests.splice(t,1)}var d,p,$=c.defer(),b=$.promise,x=g(r.url,r.params);if(h.pendingRequests.push(r),b.then(f,f),!r.cache&&!o.cache||r.cache===!1||"GET"!==r.method&&"JSONP"!==r.method||(d=y(r.cache)?r.cache:y(o.cache)?o.cache:w),d)if(p=d.get(x),v(p)){if(j(p))return p.then(f,f),p;Lr(p)?l(p[1],p[0],R(p[2]),p[3]):l(p,200,{},"OK")}else d.put(x,b);if(m(p)){var k=zn(r.url)?e.cookies()[r.xsrfCookieName||o.xsrfCookieName]:n;k&&(s[r.xsrfHeaderName||o.xsrfHeaderName]=k),t(r.method,x,a,u,s,r.timeout,r.withCredentials,r.responseType)}return b}function g(t,e){if(!e)return t;var n=[];return s(e,function(t,e){null===t||m(t)||(Lr(t)||(t=[t]),a(t,function(t){y(t)&&(x(t)?t=t.toISOString():y(t)&&(t=L(t))),n.push(X(e)+"="+X(t))}))}),n.length>0&&(t+=(-1==t.indexOf("?")?"?":"&")+n.join("&")),t}var w=r("$http"),S=[];return a(u,function(t){S.unshift(b(t)?l.get(t):l.invoke(t))}),h.pendingRequests=[],d("get","delete","head","jsonp"),p("post","put","patch"),h.defaults=o,h}]}function nn(e){if(8>=Tr&&(!e.match(/^(get|post|head|put|delete|options)$/i)||!t.XMLHttpRequest))return new t.ActiveXObject("Microsoft.XMLHTTP");if(t.XMLHttpRequest)return new t.XMLHttpRequest;throw r("$httpBackend")("noxhr","This browser does not support XMLHttpRequest.")}function rn(){this.$get=["$browser","$window","$document",function(t,e,n){return an(t,nn,t.defer,e.angular.callbacks,n[0])}]}function an(t,e,n,r,i){function o(t,e,n){var a=i.createElement("script"),o=null;return a.type="text/javascript",a.src=t,a.async=!0,o=function(t){ti(a,"load",o),ti(a,"error",o),i.body.removeChild(a),a=null;var s=-1,u="unknown";t&&("load"!==t.type||r[e].called||(t={type:"error"}),u=t.type,s="error"===t.type?404:200),n&&n(s,u)},Kr(a,"load",o),Kr(a,"error",o),i.body.appendChild(a),o}var s=-1;return function(i,u,c,l,f,h,d,$){function g(){y=s,w&&w(),x&&x.abort()}function m(e,r,i,a,o){S&&n.cancel(S),w=x=null,0===r&&(r=i?200:"file"==Ln(u).protocol?404:0),r=1223===r?204:r,o=o||"",e(r,i,a,o),t.$$completeOutstandingRequest(p)}var y;if(t.$$incOutstandingRequestCount(),u=u||t.url(),"jsonp"==Er(i)){var b="_"+(r.counter++).toString(36);r[b]=function(t){r[b].data=t,r[b].called=!0};var w=o(u.replace("JSON_CALLBACK","angular.callbacks."+b),b,function(t,e){m(l,t,r[b].data,"",e),r[b]=p})}else{var x=e(i);if(x.open(i,u,!0),a(f,function(t,e){v(t)&&x.setRequestHeader(e,t)}),x.onreadystatechange=function(){if(x&&4==x.readyState){var t=null,e=null,n="";y!==s&&(t=x.getAllResponseHeaders(),e="response"in x?x.response:x.responseText),y===s&&10>Tr||(n=x.statusText),m(l,y||x.status,e,t,n)}},d&&(x.withCredentials=!0),$)try{x.responseType=$}catch(k){if("json"!==$)throw k}x.send(c||null)}if(h>0)var S=n(g,h);else j(h)&&h.then(g)}}function on(){var t="{{",e="}}";this.startSymbol=function(e){return e?(t=e,this):t},this.endSymbol=function(t){return t?(e=t,this):e},this.$get=["$parse","$exceptionHandler","$sce",function(n,r,i){function a(t){return"\\\\\\"+t}function o(a,o,h,d){function p(n){return n.replace(c,t).replace(l,e)}function $(t){try{return j(O(t))}catch(e){var n=ki("interr","Can't interpolate: {0}\n{1}",a,e.toString());r(n)}}d=!!d;for(var g,v,y,b=0,w=[],x=[],S=a.length,C=[],A=[];S>b;){if(-1==(g=a.indexOf(t,b))||-1==(v=a.indexOf(e,g+s))){b!==S&&C.push(p(a.substring(b)));break}b!==g&&C.push(p(a.substring(b,g))),y=a.substring(g+s,v),w.push(y),x.push(n(y,$)),b=v+u,A.push(C.length),C.push("")}if(h&&C.length>1)throw ki("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required.  See http://docs.angularjs.org/api/ng.$sce",a);if(!o||w.length){var E=function(t){for(var e=0,n=w.length;n>e;e++){if(d&&m(t[e]))return;C[A[e]]=t[e]}return C.join("")},O=function(t){return h?i.getTrusted(h,t):i.valueOf(t)},j=function(t){if(null==t)return"";switch(typeof t){case"string":break;case"number":t=""+t;break;default:t=L(t)}return t};return f(function(t){var e=0,n=w.length,i=new Array(n);try{for(;n>e;e++)i[e]=x[e](t);return E(i)}catch(o){var s=ki("interr","Can't interpolate: {0}\n{1}",a,o.toString());r(s)}},{exp:a,expressions:w,$$watchDelegate:function(t,e,n){var r;return t.$watchGroup(x,function(n,i){var a=E(n);k(e)&&e.call(this,a,n!==i?r:a,t),r=a},n)}})}}var s=t.length,u=e.length,c=new RegExp(t.replace(/./g,a),"g"),l=new RegExp(e.replace(/./g,a),"g");return o.startSymbol=function(){return t},o.endSymbol=function(){return e},o}]}function sn(){this.$get=["$rootScope","$window","$q","$$q",function(t,e,n,r){function i(i,o,s,u){var c=e.setInterval,l=e.clearInterval,f=0,h=v(u)&&!u,d=(h?r:n).defer(),p=d.promise;return s=v(s)?s:0,p.then(null,null,i),p.$$intervalId=c(function(){d.notify(f++),s>0&&f>=s&&(d.resolve(f),l(p.$$intervalId),delete a[p.$$intervalId]),h||t.$apply()},o),a[p.$$intervalId]=d,p}var a={};return i.cancel=function(t){return t&&t.$$intervalId in a?(a[t.$$intervalId].reject("canceled"),e.clearInterval(t.$$intervalId),delete a[t.$$intervalId],!0):!1},i}]}function un(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"¤",posSuf:"",negPre:"(¤",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(t){return 1===t?"one":"other"}}}}function cn(t){for(var e=t.split("/"),n=e.length;n--;)e[n]=Q(e[n]);return e.join("/")}function ln(t,e,n){var r=Ln(t,n);e.$$protocol=r.protocol,e.$$host=r.hostname,e.$$port=h(r.port)||Ci[r.protocol]||null}function fn(t,e,n){var r="/"!==t.charAt(0);r&&(t="/"+t);var i=Ln(t,n);e.$$path=decodeURIComponent(r&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname),e.$$search=W(i.search),e.$$hash=decodeURIComponent(i.hash),e.$$path&&"/"!=e.$$path.charAt(0)&&(e.$$path="/"+e.$$path)}function hn(t,e){return 0===e.indexOf(t)?e.substr(t.length):void 0}function dn(t){var e=t.indexOf("#");return-1==e?t:t.substr(0,e)}function pn(t){return t.substr(0,dn(t).lastIndexOf("/")+1)}function $n(t){return t.substring(0,t.indexOf("/",t.indexOf("//")+2))}function gn(t,e){this.$$html5=!0,e=e||"";var r=pn(t);ln(t,this,t),this.$$parse=function(e){var n=hn(r,e);if(!b(n))throw Ai("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',e,r);fn(n,this,t),this.$$path||(this.$$path="/"),this.$$compose()},this.$$compose=function(){var t=J(this.$$search),e=this.$$hash?"#"+Q(this.$$hash):"";this.$$url=cn(this.$$path)+(t?"?"+t:"")+e,this.$$absUrl=r+this.$$url.substr(1)},this.$$rewrite=function(i){var a,o;return(a=hn(t,i))!==n?(o=a,(a=hn(e,a))!==n?r+(hn("/",a)||a):t+o):(a=hn(r,i))!==n?r+a:r==i+"/"?r:void 0}}function mn(t,e){var n=pn(t);ln(t,this,t),this.$$parse=function(r){function i(t,e,n){var r,i=/^\/[A-Z]:(\/.*)/;return 0===e.indexOf(n)&&(e=e.replace(n,"")),i.exec(e)?t:(r=i.exec(t),r?r[1]:t)}var a=hn(t,r)||hn(n,r),o="#"==a.charAt(0)?hn(e,a):this.$$html5?a:"";if(!b(o))throw Ai("ihshprfx",'Invalid url "{0}", missing hash prefix "{1}".',r,e);fn(o,this,t),this.$$path=i(this.$$path,o,t),this.$$compose()},this.$$compose=function(){var n=J(this.$$search),r=this.$$hash?"#"+Q(this.$$hash):"";this.$$url=cn(this.$$path)+(n?"?"+n:"")+r,this.$$absUrl=t+(this.$$url?e+this.$$url:"")},this.$$rewrite=function(e){return dn(t)==dn(e)?e:void 0}}function vn(t,e){this.$$html5=!0,mn.apply(this,arguments);var n=pn(t);this.$$rewrite=function(r){var i;return t==dn(r)?r:(i=hn(n,r))?t+e+i:n===r+"/"?n:void 0},this.$$compose=function(){var n=J(this.$$search),r=this.$$hash?"#"+Q(this.$$hash):"";this.$$url=cn(this.$$path)+(n?"?"+n:"")+r,this.$$absUrl=t+e+this.$$url}}function yn(t){return function(){return this[t]}}function bn(t,e){return function(n){return m(n)?this[t]:(this[t]=e(n),this.$$compose(),this)}}function wn(){var e="",n=!1;this.hashPrefix=function(t){return v(t)?(e=t,this):e},this.html5Mode=function(t){return v(t)?(n=t,this):n},this.$get=["$rootScope","$browser","$sniffer","$rootElement",function(r,i,a,o){function s(t){r.$broadcast("$locationChangeSuccess",u.absUrl(),t)}var u,c,l,f=i.baseHref(),h=i.url();n?(l=$n(h)+(f||"/"),c=a.history?gn:vn):(l=dn(h),c=mn),u=new c(l,"#"+e),u.$$parse(u.$$rewrite(h));var d=/^\s*(javascript|mailto):/i;o.on("click",function(n){if(!n.ctrlKey&&!n.metaKey&&2!=n.which){for(var a=Pr(n.target);"a"!==qr(a[0]);)if(a[0]===o[0]||!(a=a.parent())[0])return;var s=a.prop("href");if(y(s)&&"[object SVGAnimatedString]"===s.toString()&&(s=Ln(s.animVal).href),!d.test(s)){if(c===vn){var f=a.attr("href")||a.attr("xlink:href");if(f&&f.indexOf("://")<0){var h="#"+e;if("/"==f[0])s=l+h+f;else if("#"==f[0])s=l+h+(u.path()||"/")+f;else{var p=u.path().split("/"),$=f.split("/");2!==p.length||p[1]||(p.length=1);for(var g=0;g<$.length;g++)"."!=$[g]&&(".."==$[g]?p.pop():$[g].length&&p.push($[g]));s=l+h+p.join("/")}}}var m=u.$$rewrite(s);s&&!a.attr("target")&&m&&!n.isDefaultPrevented()&&(n.preventDefault(),m!=i.url()&&(u.$$parse(m),r.$apply(),t.angular["ff-684208-preventDefault"]=!0))}}}),u.absUrl()!=h&&i.url(u.absUrl(),!0),i.onUrlChange(function(t){u.absUrl()!=t&&(r.$evalAsync(function(){var e=u.absUrl();u.$$parse(t),r.$broadcast("$locationChangeStart",t,e).defaultPrevented?(u.$$parse(e),i.url(e)):s(e)}),r.$$phase||r.$digest())});var p=0;return r.$watch(function(){var t=i.url(),e=u.$$replace;return p&&t==u.absUrl()||(p++,r.$evalAsync(function(){r.$broadcast("$locationChangeStart",u.absUrl(),t).defaultPrevented?u.$$parse(t):(i.url(u.absUrl(),e),s(t))})),u.$$replace=!1,p}),u}]}function xn(){var t=!0,e=this;this.debugEnabled=function(e){return v(e)?(t=e,this):t},this.$get=["$window",function(n){function r(t){return t instanceof Error&&(t.stack?t=t.message&&-1===t.stack.indexOf(t.message)?"Error: "+t.message+"\n"+t.stack:t.stack:t.sourceURL&&(t=t.message+"\n"+t.sourceURL+":"+t.line)),t}function i(t){var e=n.console||{},i=e[t]||e.log||p,o=!1;try{o=!!i.apply}catch(s){}return o?function(){var t=[];return a(arguments,function(e){t.push(r(e))}),i.apply(e,t)}:function(t,e){i(t,null==e?"":e)}}return{log:i("log"),info:i("info"),warn:i("warn"),error:i("error"),debug:function(){var n=i("debug");return function(){t&&n.apply(e,arguments)}}()}}]}function kn(t,e){if("__defineGetter__"===t||"__defineSetter__"===t||"__lookupGetter__"===t||"__lookupSetter__"===t||"__proto__"===t)throw Ei("isecfld","Attempting to access a disallowed field in Angular expressions! Expression: {0}",e);return t}function Sn(t,e){if(t){if(t.constructor===t)throw Ei("isecfn","Referencing Function in Angular expressions is disallowed! Expression: {0}",e);if(t.window===t)throw Ei("isecwindow","Referencing the Window in Angular expressions is disallowed! Expression: {0}",e);if(t.children&&(t.nodeName||t.prop&&t.attr&&t.find))throw Ei("isecdom","Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}",e);if(t===Object)throw Ei("isecobj","Referencing Object in Angular expressions is disallowed! Expression: {0}",e)}return t}function Cn(t,e){if(t){if(t.constructor===t)throw Ei("isecfn","Referencing Function in Angular expressions is disallowed! Expression: {0}",e);if(t===Oi||t===ji||t===Mi)throw Ei("isecff","Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}",e)}}function An(t,e,n,r){for(var i,a=e.split("."),o=0;a.length>1;o++){i=kn(a.shift(),r);var s=t[i];s||(s={},t[i]=s),t=s}return i=kn(a.shift(),r),Sn(t,r),Sn(t[i],r),t[i]=n,n}function En(t,e,r,i,a,o){return kn(t,o),kn(e,o),kn(r,o),kn(i,o),kn(a,o),function(o,s){var u=s&&s.hasOwnProperty(t)?s:o;return null==u?u:(u=u[t],e?null==u?n:(u=u[e],r?null==u?n:(u=u[r],i?null==u?n:(u=u[i],a?null==u?n:u=u[a]:u):u):u):u)}}function On(t,e,r){var i=Di[t];if(i)return i;var o=t.split("."),s=o.length;if(e.csp)i=6>s?En(o[0],o[1],o[2],o[3],o[4],r):function(t,e){var i,a=0;do i=En(o[a++],o[a++],o[a++],o[a++],o[a++],r)(t,e),e=n,t=i;while(s>a);return i};else{var u="";a(o,function(t,e){kn(t,r),u+="if(s == null) return undefined;\ns="+(e?"s":'((l&&l.hasOwnProperty("'+t+'"))?l:s)')+"."+t+";\n"}),u+="return s;";var c=new Function("s","l",u);c.toString=g(u),i=c}return Di[t]=i,i}function jn(){var t=se(),e={csp:!1};this.$get=["$filter","$sniffer",function(n,r){function i(t,e,n,r){var i,a;return i=t.$watch(function(t){return r(t)},function(t,n,r){a=t,k(e)&&e.apply(this,arguments),v(t)&&r.$$postDigest(function(){v(a)&&i()})},n)}function o(t,e,n,r){function i(t){var e=!0;return a(t,function(t){v(t)||(e=!1)}),e}var o;return o=t.$watch(function(t){return r(t)},function(t,n,r){k(e)&&e.call(this,t,n,r),i(t)&&r.$$postDigest(function(){i(t)&&o()})},n)}function s(t,e,n,r){var i;return i=t.$watch(function(t){return r(t)},function(){k(e)&&e.apply(this,arguments),i()},n)}function u(t,e){if(!e)return t;var n=function(n,r){var i=t(n,r),a=e(i,n,r);return v(i)?a:i};return n.$$watchDelegate=t.$$watchDelegate,n}return e.csp=r.csp,function(r,a){var c,l,f;switch(typeof r){case"string":if(f=r=r.trim(),c=t[f],!c){":"===r.charAt(0)&&":"===r.charAt(1)&&(l=!0,r=r.substring(2));var h=new Pi(e),d=new Vi(h,n,e);c=d.parse(r),c.constant?c.$$watchDelegate=s:l&&(c.$$watchDelegate=c.literal?o:i),t[f]=c}return u(c,a);case"function":return u(r,a);default:return u(p,a)}}}]}function Mn(){this.$get=["$rootScope","$exceptionHandler",function(t,e){return Tn(function(e){t.$evalAsync(e)},e)}]}function Nn(){this.$get=["$browser","$exceptionHandler",function(t,e){return Tn(function(e){t.defer(e)},e)}]}function Tn(t,e){function r(t,e,n){function r(e){return function(n){i||(i=!0,e.call(t,n))}}var i=!1;return[r(e),r(n)]}function i(){this.$$state={status:0}}function o(t,e){return function(n){e.call(t,n)}}function s(t){var r,i,a;a=t.pending,t.processScheduled=!1,t.pending=n;for(var o=0,s=a.length;s>o;++o){i=a[o][0],r=a[o][t.status];try{k(r)?i.resolve(r(t.value)):1===t.status?i.resolve(t.value):i.reject(t.value)}catch(u){i.reject(u),e(u)}}}function u(e){!e.processScheduled&&e.pending&&(e.processScheduled=!0,t(function(){s(e)}))}function c(){this.promise=new i,this.resolve=o(this,this.resolve),this.reject=o(this,this.reject),this.notify=o(this,this.notify)}function l(t){var e=new c,n=0,r=Lr(t)?[]:{};return a(t,function(t,i){n++,$(t).then(function(t){r.hasOwnProperty(i)||(r[i]=t,--n||e.resolve(r))},function(t){r.hasOwnProperty(i)||e.reject(t)})}),0===n&&e.resolve(r),e.promise}var f=function(){return new c};i.prototype={then:function(t,e,n){var r=new c;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([r,t,e,n]),this.$$state.status>0&&u(this.$$state),r.promise},"catch":function(t){return this.then(null,t)},"finally":function(t,e){return this.then(function(e){return p(e,!0,t)},function(e){return p(e,!1,t)},e)}},c.prototype={resolve:function(t){if(!this.promise.$$state.status){if(t===this.promise)throw new TypeError("Cycle detected");this.$$resolve(t)}},$$resolve:function(t){var n,i;i=r(this,this.$$resolve,this.$$reject);try{(y(t)||k(t))&&(n=t&&t.then),k(n)?(this.promise.$$state.status=-1,n.call(t,i[0],i[1],this.notify)):(this.promise.$$state.value=t,this.promise.$$state.status=1,u(this.promise.$$state))}catch(a){i[1](a),e(a)}},reject:function(t){this.promise.$$state.status||this.$$reject(t)},$$reject:function(t){this.promise.$$state.value=t,this.promise.$$state.status=2,u(this.promise.$$state)},notify:function(n){var r=this.promise.$$state.pending;this.promise.$$state.status<=0&&r&&r.length&&t(function(){for(var t,i,a=0,o=r.length;o>a;a++){i=r[a][0],t=r[a][3];try{i.notify(k(t)?t(n):n)}catch(s){e(s)}}})}};var h=function(t){var e=new c;return e.reject(t),e.promise},d=function(t,e){var n=new c;return e?n.resolve(t):n.reject(t),n.promise},p=function(t,e,n){var r=null;try{k(n)&&(r=n())}catch(i){return d(i,!1)}return j(r)?r.then(function(){return d(t,e)},function(t){return d(t,!1)}):d(t,e)},$=function(t,e,n,r){var i=new c;return i.resolve(t),i.promise.then(e,n,r)},g=function m(t){function e(t){r.resolve(t)}function n(t){r.reject(t)}if(!k(t))throw new TypeError("Expected resolverFn");if(!(this instanceof m))return new m(t);var r=new c;return t(e,n),r.promise};return g.defer=f,g.reject=h,g.when=$,g.all=l,g}function Pn(){this.$get=["$window","$timeout",function(t,e){var n=t.requestAnimationFrame||t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame,r=t.cancelAnimationFrame||t.webkitCancelAnimationFrame||t.mozCancelAnimationFrame||t.webkitCancelRequestAnimationFrame,i=!!n,a=i?function(t){var e=n(t);return function(){r(e)}}:function(t){var n=e(t,16.66,!1);return function(){e.cancel(n)}};return a.supported=i,a}]}function Vn(){var t=10,e=r("$rootScope"),n=null;this.digestTtl=function(e){return arguments.length&&(t=e),t},this.$get=["$injector","$exceptionHandler","$parse","$browser",function(r,o,s,u){function l(){this.$id=c(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this["this"]=this.$root=this,this.$$destroyed=!1,this.$$asyncQueue=[],this.$$postDigestQueue=[],this.$$listeners={},this.$$listenerCount={},this.$$isolateBindings={}}function f(t){if(g.$$phase)throw e("inprog","{0} already in progress",g.$$phase);g.$$phase=t}function h(){g.$$phase=null}function d(t,e,n){do t.$$listenerCount[n]-=e,0===t.$$listenerCount[n]&&delete t.$$listenerCount[n];while(t=t.$parent)}function $(){}l.prototype={constructor:l,$new:function(t){var e;return t?(e=new l,e.$root=this.$root,e.$$asyncQueue=this.$$asyncQueue,e.$$postDigestQueue=this.$$postDigestQueue):(this.$$ChildScope||(this.$$ChildScope=function(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null,this.$$listeners={},this.$$listenerCount={},this.$id=c(),this.$$ChildScope=null},this.$$ChildScope.prototype=this),e=new this.$$ChildScope),e["this"]=e,e.$parent=this,e.$$prevSibling=this.$$childTail,this.$$childHead?(this.$$childTail.$$nextSibling=e,this.$$childTail=e):this.$$childHead=this.$$childTail=e,e},$watch:function(t,e,r){var i=s(t);if(i.$$watchDelegate)return i.$$watchDelegate(this,e,r,i);var a=this,o=a.$$watchers,u={fn:e,last:$,get:i,exp:t,eq:!!r};return n=null,k(e)||(u.fn=p),o||(o=a.$$watchers=[]),o.unshift(u),function(){D(o,u),n=null}},$watchGroup:function(t,e){function n(){u=!1,c?(c=!1,e(i,i,s)):e(i,r,s)}var r=new Array(t.length),i=new Array(t.length),o=[],s=this,u=!1,c=!0;if(!t.length){var l=!0;return s.$evalAsync(function(){l&&e(i,i,s)}),function(){l=!1}}return 1===t.length?this.$watch(t[0],function(t,n,a){i[0]=t,r[0]=n,e(i,t===n?i:r,a)}):(a(t,function(t,e){var a=s.$watch(t,function(t,a){i[e]=t,r[e]=a,u||(u=!0,s.$evalAsync(n))});o.push(a)}),function(){for(;o.length;)o.shift()()})},$watchCollection:function(t,e){function n(t){a=t;var e,n,r,s,u;if(y(a))if(i(a)){o!==d&&(o=d,g=o.length=0,f++),e=a.length,g!==e&&(f++,o.length=g=e);for(var c=0;e>c;c++)u=o[c],s=a[c],r=u!==u&&s!==s,r||u===s||(f++,o[c]=s)}else{o!==p&&(o=p={},g=0,f++),e=0;for(n in a)a.hasOwnProperty(n)&&(e++,s=a[n],u=o[n],n in o?(r=u!==u&&s!==s,r||u===s||(f++,o[n]=s)):(g++,o[n]=s,f++));if(g>e){f++;for(n in o)a.hasOwnProperty(n)||(g--,delete o[n])}}else o!==a&&(o=a,f++);return f}function r(){if($?($=!1,e(a,a,c)):e(a,u,c),l)if(y(a))if(i(a)){u=new Array(a.length);for(var t=0;t<a.length;t++)u[t]=a[t]}else{u={};for(var n in a)Or.call(a,n)&&(u[n]=a[n])}else u=a}var a,o,u,c=this,l=e.length>1,f=0,h=s(t,n),d=[],p={},$=!0,g=0;return this.$watch(h,r)},$digest:function(){var r,i,a,s,u,c,l,d,p,g,m,v=this.$$asyncQueue,y=this.$$postDigestQueue,b=t,w=this,x=[];f("$digest"),n=null;do{for(c=!1,d=w;v.length;){try{m=v.shift(),m.scope.$eval(m.expression)}catch(S){o(S)}n=null}t:do{if(s=d.$$watchers)for(u=s.length;u--;)try{if(r=s[u])if((i=r.get(d))===(a=r.last)||(r.eq?_(i,a):"number"==typeof i&&"number"==typeof a&&isNaN(i)&&isNaN(a))){if(r===n){c=!1;break t}}else c=!0,n=r,r.last=r.eq?q(i,null):i,r.fn(i,a===$?i:a,d),5>b&&(p=4-b,x[p]||(x[p]=[]),g=k(r.exp)?"fn: "+(r.exp.name||r.exp.toString()):r.exp,g+="; newVal: "+L(i)+"; oldVal: "+L(a),x[p].push(g))}catch(S){o(S)}if(!(l=d.$$childHead||d!==w&&d.$$nextSibling))for(;d!==w&&!(l=d.$$nextSibling);)d=d.$parent}while(d=l);if((c||v.length)&&!b--)throw h(),e("infdig","{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}",t,L(x))}while(c||v.length);for(h();y.length;)try{y.shift()()}catch(S){o(S)}},$destroy:function(){if(!this.$$destroyed){var t=this.$parent;if(this.$broadcast("$destroy"),this.$$destroyed=!0,this!==g){for(var e in this.$$listenerCount)d(this,this.$$listenerCount[e],e);t.$$childHead==this&&(t.$$childHead=this.$$nextSibling),t.$$childTail==this&&(t.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=null,this.$$listeners={},this.$$watchers=this.$$asyncQueue=this.$$postDigestQueue=[],this.$destroy=this.$digest=this.$apply=p,this.$on=this.$watch=this.$watchGroup=function(){return p}}}},$eval:function(t,e){return s(t)(this,e)},$evalAsync:function(t){g.$$phase||g.$$asyncQueue.length||u.defer(function(){g.$$asyncQueue.length&&g.$digest()}),this.$$asyncQueue.push({scope:this,expression:t})},$$postDigest:function(t){this.$$postDigestQueue.push(t)},$apply:function(t){try{return f("$apply"),this.$eval(t)}catch(e){o(e)}finally{h();try{g.$digest()}catch(e){throw o(e),e}}},$on:function(t,e){var n=this.$$listeners[t];n||(this.$$listeners[t]=n=[]),n.push(e);var r=this;do r.$$listenerCount[t]||(r.$$listenerCount[t]=0),r.$$listenerCount[t]++;while(r=r.$parent);var i=this;return function(){n[V(n,e)]=null,d(i,1,t)}},$emit:function(t){var e,n,r,i=[],a=this,s=!1,u={name:t,targetScope:a,stopPropagation:function(){s=!0},preventDefault:function(){u.defaultPrevented=!0},defaultPrevented:!1},c=U([u],arguments,1);do{for(e=a.$$listeners[t]||i,u.currentScope=a,n=0,r=e.length;r>n;n++)if(e[n])try{e[n].apply(null,c)}catch(l){o(l)}else e.splice(n,1),n--,r--;if(s)return u.currentScope=null,u;a=a.$parent}while(a);return u.currentScope=null,u},$broadcast:function(t){var e=this,n=e,r=e,i={name:t,targetScope:e,preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1};if(!e.$$listenerCount[t])return i;for(var a,s,u,c=U([i],arguments,1);n=r;){for(i.currentScope=n,a=n.$$listeners[t]||[],s=0,u=a.length;u>s;s++)if(a[s])try{a[s].apply(null,c)}catch(l){o(l)}else a.splice(s,1),s--,u--;if(!(r=n.$$listenerCount[t]&&n.$$childHead||n!==e&&n.$$nextSibling))for(;n!==e&&!(r=n.$$nextSibling);)n=n.$parent}return i.currentScope=null,i}};var g=new l;return g}]}function Dn(){var t=/^\s*(https?|ftp|mailto|tel|file):/,e=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(e){return v(e)?(t=e,this):t},this.imgSrcSanitizationWhitelist=function(t){return v(t)?(e=t,this):e},this.$get=function(){return function(n,r){var i,a=r?e:t;return Tr&&!(Tr>=8)||(i=Ln(n).href,""===i||i.match(a))?n:"unsafe:"+i}}}function qn(t){return t.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")}function Rn(t){if("self"===t)return t;if(b(t)){if(t.indexOf("***")>-1)throw qi("iwcard","Illegal sequence *** in string matcher.  String: {0}",t);return t=qn(t).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),new RegExp("^"+t+"$")}if(S(t))return new RegExp("^"+t.source+"$");throw qi("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}function _n(t){var e=[];return v(t)&&a(t,function(t){e.push(Rn(t))}),e}function Un(){this.SCE_CONTEXTS=Ri;var t=["self"],e=[];this.resourceUrlWhitelist=function(e){return arguments.length&&(t=_n(e)),t},this.resourceUrlBlacklist=function(t){return arguments.length&&(e=_n(t)),e},this.$get=["$injector",function(r){function i(t,e){return"self"===t?zn(e):!!t.exec(e.href)}function a(n){var r,a,o=Ln(n.toString()),s=!1;for(r=0,a=t.length;a>r;r++)if(i(t[r],o)){s=!0;break}if(s)for(r=0,a=e.length;a>r;r++)if(i(e[r],o)){s=!1;break}return s}function o(t){var e=function(t){this.$$unwrapTrustedValue=function(){return t}};return t&&(e.prototype=new t),e.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},e.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},e}function s(t,e){var r=h.hasOwnProperty(t)?h[t]:null;if(!r)throw qi("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",t,e);if(null===e||e===n||""===e)return e;if("string"!=typeof e)throw qi("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",t);return new r(e)}function u(t){return t instanceof f?t.$$unwrapTrustedValue():t}function c(t,e){if(null===e||e===n||""===e)return e;var r=h.hasOwnProperty(t)?h[t]:null;if(r&&e instanceof r)return e.$$unwrapTrustedValue();if(t===Ri.RESOURCE_URL){if(a(e))return e;throw qi("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy.  URL: {0}",e.toString())}if(t===Ri.HTML)return l(e);throw qi("unsafe","Attempting to use an unsafe value in a safe context.")}var l=function(){throw qi("unsafe","Attempting to use an unsafe value in a safe context.")};r.has("$sanitize")&&(l=r.get("$sanitize"));var f=o(),h={};return h[Ri.HTML]=o(f),h[Ri.CSS]=o(f),h[Ri.URL]=o(f),h[Ri.JS]=o(f),h[Ri.RESOURCE_URL]=o(h[Ri.URL]),{trustAs:s,getTrusted:c,valueOf:u}}]}function In(){var t=!0;this.enabled=function(e){return arguments.length&&(t=!!e),t},this.$get=["$parse","$sniffer","$sceDelegate",function(e,n,r){if(t&&n.msie&&n.msieDocumentMode<8)throw qi("iequirks","Strict Contextual Escaping does not support Internet Explorer version < 9 in quirks mode.  You can fix this by adding the text <!doctype html> to the top of your HTML document.  See http://docs.angularjs.org/api/ng.$sce for more information.");var i=R(Ri);i.isEnabled=function(){return t},i.trustAs=r.trustAs,i.getTrusted=r.getTrusted,i.valueOf=r.valueOf,t||(i.trustAs=i.getTrusted=function(t,e){return e},i.valueOf=$),i.parseAs=function(t,n){var r=e(n);return r.literal&&r.constant?r:e(n,function(e){return i.getTrusted(t,e)})};var o=i.parseAs,s=i.getTrusted,u=i.trustAs;
return a(Ri,function(t,e){var n=Er(e);i[fe("parse_as_"+n)]=function(e){return o(t,e)},i[fe("get_trusted_"+n)]=function(e){return s(t,e)},i[fe("trust_as_"+n)]=function(e){return u(t,e)}}),i}]}function Hn(){this.$get=["$window","$document",function(t,e){var n,r,i={},a=h((/android (\d+)/.exec(Er((t.navigator||{}).userAgent))||[])[1]),o=/Boxee/i.test((t.navigator||{}).userAgent),s=e[0]||{},u=s.documentMode,c=/^(Moz|webkit|O|ms)(?=[A-Z])/,l=s.body&&s.body.style,f=!1,d=!1;if(l){for(var p in l)if(r=c.exec(p)){n=r[0],n=n.substr(0,1).toUpperCase()+n.substr(1);break}n||(n="WebkitOpacity"in l&&"webkit"),f=!!("transition"in l||n+"Transition"in l),d=!!("animation"in l||n+"Animation"in l),!a||f&&d||(f=b(s.body.style.webkitTransition),d=b(s.body.style.webkitAnimation))}return{history:!(!t.history||!t.history.pushState||4>a||o),hashchange:"onhashchange"in t&&(!u||u>7),hasEvent:function(t){if("input"==t&&9==Tr)return!1;if(m(i[t])){var e=s.createElement("div");i[t]="on"+t in e}return i[t]},csp:Gr(),vendorPrefix:n,transitions:f,animations:d,android:a,msie:Tr,msieDocumentMode:u}}]}function Fn(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(t,e,n,r,i){function a(a,s,u){var c,l=v(u)&&!u,f=(l?r:n).defer(),h=f.promise;return c=e.defer(function(){try{f.resolve(a())}catch(e){f.reject(e),i(e)}finally{delete o[h.$$timeoutId]}l||t.$apply()},s),h.$$timeoutId=c,o[c]=f,h}var o={};return a.cancel=function(t){return t&&t.$$timeoutId in o?(o[t.$$timeoutId].reject("canceled"),delete o[t.$$timeoutId],e.defer.cancel(t.$$timeoutId)):!1},a}]}function Ln(t){var e=t;return Tr&&(_i.setAttribute("href",e),e=_i.href),_i.setAttribute("href",e),{href:_i.href,protocol:_i.protocol?_i.protocol.replace(/:$/,""):"",host:_i.host,search:_i.search?_i.search.replace(/^\?/,""):"",hash:_i.hash?_i.hash.replace(/^#/,""):"",hostname:_i.hostname,port:_i.port,pathname:"/"===_i.pathname.charAt(0)?_i.pathname:"/"+_i.pathname}}function zn(t){var e=b(t)?Ln(t):t;return e.protocol===Ui.protocol&&e.host===Ui.host}function Bn(){this.$get=g(t)}function Gn(t){function e(r,i){if(y(r)){var o={};return a(r,function(t,n){o[n]=e(n,t)}),o}return t.factory(r+n,i)}var n="Filter";this.register=e,this.$get=["$injector",function(t){return function(e){return t.get(e+n)}}],e("currency",Jn),e("date",ar),e("filter",Wn),e("json",or),e("limitTo",sr),e("lowercase",zi),e("number",Qn),e("orderBy",ur),e("uppercase",Bi)}function Wn(){return function(t,e,n){if(!Lr(t))return t;var r=typeof n,i=[];i.check=function(t){for(var e=0;e<i.length;e++)if(!i[e](t))return!1;return!0},"function"!==r&&(n="boolean"===r&&n?function(t,e){return Hr.equals(t,e)}:function(t,e){if(t&&e&&"object"==typeof t&&"object"==typeof e){for(var r in t)if("$"!==r.charAt(0)&&Or.call(t,r)&&n(t[r],e[r]))return!0;return!1}return e=(""+e).toLowerCase(),(""+t).toLowerCase().indexOf(e)>-1});var a=function(t,e){if("string"==typeof e&&"!"===e.charAt(0))return!a(t,e.substr(1));switch(typeof t){case"boolean":case"number":case"string":return n(t,e);case"object":switch(typeof e){case"object":return n(t,e);default:for(var r in t)if("$"!==r.charAt(0)&&a(t[r],e))return!0}return!1;case"array":for(var i=0;i<t.length;i++)if(a(t[i],e))return!0;return!1;default:return!1}};switch(typeof e){case"boolean":case"number":case"string":e={$:e};case"object":for(var o in e)!function(t){"undefined"!=typeof e[t]&&i.push(function(n){return a("$"==t?n:n&&n[t],e[t])})}(o);break;case"function":i.push(e);break;default:return t}for(var s=[],u=0;u<t.length;u++){var c=t[u];i.check(c)&&s.push(c)}return s}}function Jn(t){var e=t.NUMBER_FORMATS;return function(t,n){return m(n)&&(n=e.CURRENCY_SYM),Xn(t,e.PATTERNS[1],e.GROUP_SEP,e.DECIMAL_SEP,2).replace(/\u00A4/g,n)}}function Qn(t){var e=t.NUMBER_FORMATS;return function(t,n){return Xn(t,e.PATTERNS[0],e.GROUP_SEP,e.DECIMAL_SEP,n)}}function Xn(t,e,n,r,i){if(null==t||!isFinite(t)||y(t))return"";var a=0>t;t=Math.abs(t);var o=t+"",s="",u=[],c=!1;if(-1!==o.indexOf("e")){var l=o.match(/([\d\.]+)e(-?)(\d+)/);l&&"-"==l[2]&&l[3]>i+1?(o="0",t=0):(s=o,c=!0)}if(c)i>0&&t>-1&&1>t&&(s=t.toFixed(i));else{var f=(o.split(Ii)[1]||"").length;m(i)&&(i=Math.min(Math.max(e.minFrac,f),e.maxFrac)),t=+(Math.round(+(t.toString()+"e"+i)).toString()+"e"+-i);var h=(""+t).split(Ii),d=h[0];h=h[1]||"";var p,$=0,g=e.lgSize,v=e.gSize;if(d.length>=g+v)for($=d.length-g,p=0;$>p;p++)($-p)%v===0&&0!==p&&(s+=n),s+=d.charAt(p);for(p=$;p<d.length;p++)(d.length-p)%g===0&&0!==p&&(s+=n),s+=d.charAt(p);for(;h.length<i;)h+="0";i&&"0"!==i&&(s+=r+h.substr(0,i))}return u.push(a?e.negPre:e.posPre),u.push(s),u.push(a?e.negSuf:e.posSuf),u.join("")}function Yn(t,e,n){var r="";for(0>t&&(r="-",t=-t),t=""+t;t.length<e;)t="0"+t;return n&&(t=t.substr(t.length-e)),r+t}function Zn(t,e,n,r){return n=n||0,function(i){var a=i["get"+t]();return(n>0||a>-n)&&(a+=n),0===a&&-12==n&&(a=12),Yn(a,e,r)}}function Kn(t,e){return function(n,r){var i=n["get"+t](),a=jr(e?"SHORT"+t:t);return r[a][i]}}function tr(t){var e=-1*t.getTimezoneOffset(),n=e>=0?"+":"";return n+=Yn(Math[e>0?"floor":"ceil"](e/60),2)+Yn(Math.abs(e%60),2)}function er(t){var e=new Date(t,0,1).getDay();return new Date(t,0,(4>=e?5:12)-e)}function nr(t){return new Date(t.getFullYear(),t.getMonth(),t.getDate()+(4-t.getDay()))}function rr(t){return function(e){var n=er(e.getFullYear()),r=nr(e),i=+r-+n,a=1+Math.round(i/6048e5);return Yn(a,t)}}function ir(t,e){return t.getHours()<12?e.AMPMS[0]:e.AMPMS[1]}function ar(t){function e(t){var e;if(e=t.match(n)){var r=new Date(0),i=0,a=0,o=e[8]?r.setUTCFullYear:r.setFullYear,s=e[8]?r.setUTCHours:r.setHours;e[9]&&(i=h(e[9]+e[10]),a=h(e[9]+e[11])),o.call(r,h(e[1]),h(e[2])-1,h(e[3]));var u=h(e[4]||0)-i,c=h(e[5]||0)-a,l=h(e[6]||0),f=Math.round(1e3*parseFloat("0."+(e[7]||0)));return s.call(r,u,c,l,f),r}return t}var n=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(n,r){var i,o,s="",u=[];if(r=r||"mediumDate",r=t.DATETIME_FORMATS[r]||r,b(n)&&(n=Li.test(n)?h(n):e(n)),w(n)&&(n=new Date(n)),!x(n))return n;for(;r;)o=Fi.exec(r),o?(u=U(u,o,1),r=u.pop()):(u.push(r),r=null);return a(u,function(e){i=Hi[e],s+=i?i(n,t.DATETIME_FORMATS):e.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),s}}function or(){return function(t){return L(t,!0)}}function sr(){return function(t,e){if(!Lr(t)&&!b(t))return t;if(e=1/0===Math.abs(Number(e))?Number(e):h(e),b(t))return e?e>=0?t.slice(0,e):t.slice(e,t.length):"";var n,r,i=[];for(e>t.length?e=t.length:e<-t.length&&(e=-t.length),e>0?(n=0,r=e):(n=t.length+e,r=t.length);r>n;n++)i.push(t[n]);return i}}function ur(t){return function(e,n,r){function i(t,e){for(var r=0;r<n.length;r++){var i=n[r](t,e);if(0!==i)return i}return 0}function a(t,e){return e?function(e,n){return t(n,e)}:t}function o(t,e){var n=typeof t,r=typeof e;return n==r?(x(t)&&x(e)&&(t=t.valueOf(),e=e.valueOf()),"string"==n&&(t=t.toLowerCase(),e=e.toLowerCase()),t===e?0:e>t?-1:1):r>n?-1:1}if(!Lr(e))return e;if(!n)return e;n=Lr(n)?n:[n],n=T(n,function(e){var n=!1,r=e||$;if(b(e)&&(("+"==e.charAt(0)||"-"==e.charAt(0))&&(n="-"==e.charAt(0),e=e.substring(1)),r=t(e),r.constant)){var i=r();return a(function(t,e){return o(t[i],e[i])},n)}return a(function(t,e){return o(r(t),r(e))},n)});for(var s=[],u=0;u<e.length;u++)s.push(e[u]);return s.sort(a(i,r))}}function cr(t){return k(t)&&(t={link:t}),t.restrict=t.restrict||"AC",g(t)}function lr(t,e,n,r){function i(e,n){n=n?"-"+te(n,"-"):"",r.removeClass(t,(e?ha:fa)+n),r.addClass(t,(e?fa:ha)+n)}var o=this,s=t.parent().controller("form")||Ji,u=0,c=o.$error={},l=[];o.$name=e.name||e.ngForm,o.$dirty=!1,o.$pristine=!0,o.$valid=!0,o.$invalid=!1,o.$submitted=!1,s.$addControl(o),t.addClass(da),i(!0),o.$rollbackViewValue=function(){a(l,function(t){t.$rollbackViewValue()})},o.$commitViewValue=function(){a(l,function(t){t.$commitViewValue()})},o.$addControl=function(t){ie(t.$name,"input"),l.push(t),t.$name&&(o[t.$name]=t)},o.$removeControl=function(t){t.$name&&o[t.$name]===t&&delete o[t.$name],a(c,function(e,n){o.$setValidity(n,!0,t)}),D(l,t)},o.$setValidity=function(t,e,n){var r=c[t];if(e)r&&(D(r,n),r.length||(u--,u||(i(e),o.$valid=!0,o.$invalid=!1),c[t]=!1,i(!0,t),s.$setValidity(t,!0,o)));else{if(u||i(e),r){if(P(r,n))return}else c[t]=r=[],u++,i(!1,t),s.$setValidity(t,!1,o);r.push(n),o.$valid=!1,o.$invalid=!0}},o.$setDirty=function(){r.removeClass(t,da),r.addClass(t,pa),o.$dirty=!0,o.$pristine=!1,s.$setDirty()},o.$setPristine=function(){r.setClass(t,da,pa+" "+Qi),o.$dirty=!1,o.$pristine=!0,o.$submitted=!1,a(l,function(t){t.$setPristine()})},o.$setSubmitted=function(){r.addClass(t,Qi),o.$submitted=!0,s.$setSubmitted()}}function fr(t,e,r,i){return t.$setValidity(e,r),r?i:n}function hr(t,e){var n,r;if(e)for(n=0;n<e.length;++n)if(r=e[n],t[r])return!0;return!1}function dr(t,e,n,r,i){if(y(i)){t.$$hasNativeValidators=!0;var a=function(a){return t.$error[e]||hr(i,r)||!hr(i,n)?a:void t.$setValidity(e,!1)};t.$parsers.push(a)}}function pr(t,e,n,r,i,a){var o=e.prop(Ar),s=e[0].placeholder,u={},c=Er(e[0].type);if(r.$$validityState=o,!i.android){var l=!1;e.on("compositionstart",function(){l=!0}),e.on("compositionend",function(){l=!1,f()})}var f=function(i){if(!l){var a=e.val(),f=i&&i.type;if(Tr&&"input"===(i||u).type&&e[0].placeholder!==s)return void(s=e[0].placeholder);"password"===c||n.ngTrim&&"false"===n.ngTrim||(a=zr(a));var h=o&&r.$$hasNativeValidators;(r.$viewValue!==a||""===a&&h)&&(t.$$phase?r.$setViewValue(a,f,h):t.$apply(function(){r.$setViewValue(a,f,h)}))}};if(i.hasEvent("input"))e.on("input",f);else{var h,d=function(t){h||(h=a.defer(function(){f(t),h=null}))};e.on("keydown",function(t){var e=t.keyCode;91===e||e>15&&19>e||e>=37&&40>=e||d(t)}),i.hasEvent("paste")&&e.on("paste cut",d)}e.on("change",f),r.$render=function(){e.val(r.$isEmpty(r.$viewValue)?"":r.$viewValue)}}function $r(t){if(x(t))return t;if(b(t)){ia.lastIndex=0;var e=ia.exec(t);if(e){var n=+e[1],r=+e[2],i=er(n),a=7*(r-1);return new Date(n,0,i.getDate()+a)}}return 0/0}function gr(t,e){return function(n){var r,i;return x(n)?n:b(n)&&(t.lastIndex=0,r=t.exec(n))?(r.shift(),i={yyyy:0,MM:1,dd:1,HH:0,mm:0},a(r,function(t,n){n<e.length&&(i[e[n]]=+t)}),new Date(i.yyyy,i.MM-1,i.dd,i.HH,i.mm)):0/0}}function mr(t,e,r,i){return function(a,o,s,u,c,l,f){if(pr(a,o,s,u,c,l),u.$parsers.push(function(i){return u.$isEmpty(i)?(u.$setValidity(t,!0),null):e.test(i)?(u.$setValidity(t,!0),r(i)):(u.$setValidity(t,!1),n)}),u.$formatters.push(function(t){return x(t)?f("date")(t,i):""}),s.min){var h=function(t){var e=u.$isEmpty(t)||r(t)>=r(s.min);return u.$setValidity("min",e),e?t:n};u.$parsers.push(h),u.$formatters.push(h)}if(s.max){var d=function(t){var e=u.$isEmpty(t)||r(t)<=r(s.max);return u.$setValidity("max",e),e?t:n};u.$parsers.push(d),u.$formatters.push(d)}}}function vr(t,e,r,i,a,o){if(pr(t,e,r,i,a,o),i.$parsers.push(function(t){var e=i.$isEmpty(t);return e||ea.test(t)?(i.$setValidity("number",!0),""===t?null:e?t:parseFloat(t)):(i.$setValidity("number",!1),n)}),dr(i,"number",ca,null,i.$$validityState),i.$formatters.push(function(t){return i.$isEmpty(t)?"":""+t}),r.min){var s=function(t){var e=parseFloat(r.min);return fr(i,"min",i.$isEmpty(t)||t>=e,t)};i.$parsers.push(s),i.$formatters.push(s)}if(r.max){var u=function(t){var e=parseFloat(r.max);return fr(i,"max",i.$isEmpty(t)||e>=t,t)};i.$parsers.push(u),i.$formatters.push(u)}i.$formatters.push(function(t){return fr(i,"number",i.$isEmpty(t)||w(t),t)})}function yr(t,e,n,r,i,a){pr(t,e,n,r,i,a),r.$validators.url=function(t,e){var n=t||e;return r.$isEmpty(n)||Ki.test(n)}}function br(t,e,n,r,i,a){pr(t,e,n,r,i,a),r.$validators.email=function(t,e){var n=t||e;return r.$isEmpty(n)||ta.test(n)}}function wr(t,e,n,r){m(n.name)&&e.attr("name",c());var i=function(i){e[0].checked&&t.$apply(function(){r.$setViewValue(n.value,i&&i.type)})};e.on("click",i),r.$render=function(){var t=n.value;e[0].checked=t==r.$viewValue},n.$observe("value",r.$render)}function xr(t,e,n,i,a){var o;if(v(i)){if(o=t(i),!o.constant)throw new r("ngModel")("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,i);return o(e)}return a}function kr(t,e,n,r,i,a,o,s){var u=xr(s,t,"ngTrueValue",n.ngTrueValue,!0),c=xr(s,t,"ngFalseValue",n.ngFalseValue,!1),l=function(n){t.$apply(function(){r.$setViewValue(e[0].checked,n&&n.type)})};e.on("click",l),r.$render=function(){e[0].checked=r.$viewValue},r.$isEmpty=function(t){return t!==u},r.$formatters.push(function(t){return _(t,u)}),r.$parsers.push(function(t){return t?u:c})}function Sr(t,e){return t="ngClass"+t,["$animate",function(n){function r(t,e){var n=[];t:for(var r=0;r<t.length;r++){for(var i=t[r],a=0;a<e.length;a++)if(i==e[a])continue t;n.push(i)}return n}function i(t){if(Lr(t))return t;if(b(t))return t.split(" ");if(y(t)){var e=[];return a(t,function(t,n){t&&(e=e.concat(n.split(" ")))}),e}return t}return{restrict:"AC",link:function(o,s,u){function c(t){var e=f(t,1);u.$addClass(e)}function l(t){var e=f(t,-1);u.$removeClass(e)}function f(t,e){var n=s.data("$classCounts")||{},r=[];return a(t,function(t){(e>0||n[t])&&(n[t]=(n[t]||0)+e,n[t]===+(e>0)&&r.push(t))}),s.data("$classCounts",n),r.join(" ")}function h(t,e){var i=r(e,t),a=r(t,e);a=f(a,-1),i=f(i,1),0===i.length?n.removeClass(s,a):0===a.length?n.addClass(s,i):n.setClass(s,i,a)}function d(t){if(e===!0||o.$index%2===e){var n=i(t||[]);if(p){if(!_(t,p)){var r=i(p);h(r,n)}}else c(n)}p=R(t)}var p;o.$watch(u[t],d,!0),u.$observe("class",function(){d(o.$eval(u[t]))}),"ngClass"!==t&&o.$watch("$index",function(n,r){var a=1&n;if(a!==(1&r)){var s=i(o.$eval(u[t]));a===e?c(s):l(s)}})}}}]}var Cr=/^\/(.+)\/([a-z]*)$/,Ar="validity",Er=function(t){return b(t)?t.toLowerCase():t},Or=Object.prototype.hasOwnProperty,jr=function(t){return b(t)?t.toUpperCase():t},Mr=function(t){return b(t)?t.replace(/[A-Z]/g,function(t){return String.fromCharCode(32|t.charCodeAt(0))}):t},Nr=function(t){return b(t)?t.replace(/[a-z]/g,function(t){return String.fromCharCode(-33&t.charCodeAt(0))}):t};"i"!=="I".toLowerCase()&&(Er=Mr,jr=Nr);var Tr,Pr,Vr,Dr,qr,Rr=[].slice,_r=[].push,Ur=Object.prototype.toString,Ir=r("ng"),Hr=t.angular||(t.angular={}),Fr=0;Tr=h((/msie (\d+)/.exec(Er(navigator.userAgent))||[])[1]),isNaN(Tr)&&(Tr=h((/trident\/.*; rv:(\d+)/.exec(Er(navigator.userAgent))||[])[1])),p.$inject=[],$.$inject=[];var Lr=Array.isArray,zr=function(t){return b(t)?t.trim():t};qr=9>Tr?function(t){return t=t.nodeName?t:t[0],Er(t.scopeName&&"HTML"!=t.scopeName?t.scopeName+":"+t.nodeName:t.nodeName)}:function(t){return Er(t.nodeName?t.nodeName:t[0].nodeName)};var Br,Gr=function(){if(v(Gr.isActive_))return Gr.isActive_;var t=!(!e.querySelector("[ng-csp]")&&!e.querySelector("[data-ng-csp]"));if(!t)try{new Function("")}catch(n){t=!0}return Gr.isActive_=t},Wr=["ng-","data-ng-","ng:","x-ng-"],Jr=/[A-Z]/g,Qr=!1,Xr={full:"1.3.0-beta.19",major:1,minor:3,dot:0,codeName:"rafter-ascension"};ge.expando="ng339";var Yr=ge.cache={},Zr=1,Kr=function(t,e,n){t.addEventListener(e,n,!1)},ti=function(t,e,n){t.removeEventListener(e,n,!1)};ge._data=function(t){return this.cache[t[this.expando]]||{}};var ei=/([\:\-\_]+(.))/g,ni=/^moz([A-Z])/,ri={mouseleave:"mouseout",mouseenter:"mouseover"},ii=r("jqLite"),ai=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,oi=/<|&#?\w+;/,si=/<([\w:]+)/,ui=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,ci={option:[1,'<select multiple="multiple">',"</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ci.optgroup=ci.option,ci.tbody=ci.tfoot=ci.colgroup=ci.caption=ci.thead,ci.th=ci.td;var li=ge.prototype={ready:function(n){function r(){i||(i=!0,n())}var i=!1;"complete"===e.readyState?setTimeout(r):(this.on("DOMContentLoaded",r),ge(t).on("load",r),this.on("DOMContentLoaded",r))},toString:function(){var t=[];return a(this,function(e){t.push(""+e)}),"["+t.join(", ")+"]"},eq:function(t){return Pr(t>=0?this[t]:this[this.length+t])},length:0,push:_r,sort:[].sort,splice:[].splice},fi={};a("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(t){fi[Er(t)]=t});var hi={};a("input,select,option,textarea,button,form,details".split(","),function(t){hi[t]=!0});var di={ngMinlength:"minlength",ngMaxlength:"maxlength",ngPattern:"pattern"};a({data:xe,removeData:be},function(t,e){ge[e]=t}),a({data:xe,inheritedData:Oe,scope:function(t){return Pr.data(t,"$scope")||Oe(t.parentNode||t,["$isolateScope","$scope"])},isolateScope:function(t){return Pr.data(t,"$isolateScope")||Pr.data(t,"$isolateScopeNoTemplate")},controller:Ee,injector:function(t){return Oe(t,"$injector")},removeAttr:function(t,e){t.removeAttribute(e)},hasClass:ke,css:function(t,e,n){return e=fe(e),v(n)?void(t.style[e]=n):t.style[e]},attr:function(t,e,r){var i=Er(e);if(fi[i]){if(!v(r))return t[e]||(t.attributes.getNamedItem(e)||p).specified?i:n;r?(t[e]=!0,t.setAttribute(e,i)):(t[e]=!1,t.removeAttribute(i))}else if(v(r))t.setAttribute(e,r);else if(t.getAttribute){var a=t.getAttribute(e,2);return null===a?n:a}},prop:function(t,e,n){return v(n)?void(t[e]=n):t[e]},text:function(){function t(t,e){if(m(e)){var n=t.nodeType;return 1===n||3===n?t.textContent:""}t.textContent=e}return t.$dv="",t}(),val:function(t,e){if(m(e)){if(t.multiple&&"select"===qr(t)){var n=[];return a(t.options,function(t){t.selected&&n.push(t.value||t.text)}),0===n.length?null:n}return t.value}t.value=e},html:function(t,e){return m(e)?t.innerHTML:(ve(t,!0),void(t.innerHTML=e))},empty:je},function(t,e){ge.prototype[e]=function(e,r){var i,a,o=this.length;if(t!==je&&(2==t.length&&t!==ke&&t!==Ee?e:r)===n){if(y(e)){for(i=0;o>i;i++)if(t===xe)t(this[i],e);else for(a in e)t(this[i],a,e[a]);return this}for(var s=t.$dv,u=s===n?Math.min(o,1):o,c=0;u>c;c++){var l=t(this[c],e,r);s=s?s+l:l}return s}for(i=0;o>i;i++)t(this[i],e,r);return this}}),a({removeData:be,on:function ro(t,e,n,r){if(v(r))throw ii("onargs","jqLite#on() does not support the `selector` or `eventData` parameters");if(de(t)){var i=we(t,!0),a=i.events,o=i.handle;o||(o=i.handle=Pe(t,a));for(var s=e.indexOf(" ")>=0?e.split(" "):[e],u=s.length;u--;){e=s[u];var c=a[e];c||(a[e]=[],"mouseenter"===e||"mouseleave"===e?ro(t,ri[e],function(t){var n=this,r=t.relatedTarget;(!r||r!==n&&!n.contains(r))&&o(t,e)}):"$destroy"!==e&&Kr(t,e,o),c=a[e]),c.push(n)}}},off:ye,one:function(t,e,n){t=Pr(t),t.on(e,function r(){t.off(e,n),t.off(e,r)}),t.on(e,n)},replaceWith:function(t,e){var n,r=t.parentNode;ve(t),a(new ge(e),function(e){n?r.insertBefore(e,n.nextSibling):r.replaceChild(e,t),n=e})},children:function(t){var e=[];return a(t.childNodes,function(t){1===t.nodeType&&e.push(t)}),e},contents:function(t){return t.contentDocument||t.childNodes||[]},append:function(t,e){var n=t.nodeType;if(1===n||11===n){e=new ge(e);for(var r=0,i=e.length;i>r;r++){var a=e[r];t.appendChild(a)}}},prepend:function(t,e){if(1===t.nodeType){var n=t.firstChild;a(new ge(e),function(e){t.insertBefore(e,n)})}},wrap:function(t,e){e=Pr(e).eq(0).clone()[0];var n=t.parentNode;n&&n.replaceChild(e,t),e.appendChild(t)},remove:Me,detach:function(t){Me(t,!0)},after:function(t,e){var n=t,r=t.parentNode;e=new ge(e);for(var i=0,a=e.length;a>i;i++){var o=e[i];r.insertBefore(o,n.nextSibling),n=o}},addClass:Ce,removeClass:Se,toggleClass:function(t,e,n){e&&a(e.split(" "),function(e){var r=n;m(r)&&(r=!ke(t,e)),(r?Ce:Se)(t,e)})},parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},next:function(t){return t.nextElementSibling},find:function(t,e){return t.getElementsByTagName?t.getElementsByTagName(e):[]},clone:me,triggerHandler:function(t,e,n){var r,i,o,s=e.type||e,u=we(t),c=u&&u.events,l=c&&c[s];l&&(r={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return this.defaultPrevented===!0},stopPropagation:p,type:s,target:t},e.type&&(r=f(r,e)),i=R(l),o=n?[r].concat(n):[r],a(i,function(e){e.apply(t,o)}))}},function(t,e){ge.prototype[e]=function(e,n,r){for(var i,a=0,o=this.length;o>a;a++)m(i)?(i=t(this[a],e,n,r),v(i)&&(i=Pr(i))):Ae(i,t(this[a],e,n,r));return v(i)?i:this},ge.prototype.bind=ge.prototype.on,ge.prototype.unbind=ge.prototype.off}),De.prototype={put:function(t,e){this[Ve(t,this.nextUid)]=e},get:function(t){return this[Ve(t,this.nextUid)]},remove:function(t){var e=this[t=Ve(t,this.nextUid)];return delete this[t],e}};var pi=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,$i=/,/,gi=/^\s*(_?)(\S+?)\1\s*$/,mi=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,vi=r("$injector");_e.$$annotate=Re;var yi=r("$animate"),bi=["$provide",function(t){this.$$selectors={},this.register=function(e,n){var r=e+"-animation";if(e&&"."!=e.charAt(0))throw yi("notcsel","Expecting class selector starting with '.' got '{0}'.",e);this.$$selectors[e.substr(1)]=r,t.factory(r,n)},this.classNameFilter=function(t){return 1===arguments.length&&(this.$$classNameFilter=t instanceof RegExp?t:null),this.$$classNameFilter},this.$get=["$timeout","$$asyncCallback",function(t,e){function n(t){t&&e(t)}return{enter:function(t,e,r,i){return r?r.after(t):e.prepend(t),n(i),p},leave:function(t,e){return t.remove(),n(e),p},move:function(t,e,n,r){return this.enter(t,e,n,r)},addClass:function(t,e,r){return e=b(e)?e:Lr(e)?e.join(" "):"",a(t,function(t){Ce(t,e)}),n(r),p},removeClass:function(t,e,r){return e=b(e)?e:Lr(e)?e.join(" "):"",a(t,function(t){Se(t,e)}),n(r),p},setClass:function(t,e,r,i){return a(t,function(t){Ce(t,e),Se(t,r)}),n(i),p},enabled:p}}]}],wi=r("$compile");Be.$inject=["$provide","$$sanitizeUriProvider"];var xi=/^(x[\:\-_]|data[\:\-_])/i,ki=r("$interpolate"),Si=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,Ci={http:80,https:443,ftp:21},Ai=r("$location");vn.prototype=mn.prototype=gn.prototype={$$html5:!1,$$replace:!1,absUrl:yn("$$absUrl"),url:function(t,e){if(m(t))return this.$$url;var n=Si.exec(t);return n[1]&&this.path(decodeURIComponent(n[1])),(n[2]||n[1])&&this.search(n[3]||""),this.hash(n[5]||"",e),this},protocol:yn("$$protocol"),host:yn("$$host"),port:yn("$$port"),path:bn("$$path",function(t){return"/"==t.charAt(0)?t:"/"+t}),search:function(t,e){switch(arguments.length){case 0:return this.$$search;case 1:if(b(t))this.$$search=W(t);else{if(!y(t))throw Ai("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");a(t,function(e,n){null==e&&delete t[n]}),this.$$search=t}break;default:m(e)||null===e?delete this.$$search[t]:this.$$search[t]=e}return this.$$compose(),this},hash:bn("$$hash",$),replace:function(){return this.$$replace=!0,this}};var Ei=r("$parse"),Oi=Function.prototype.call,ji=Function.prototype.apply,Mi=Function.prototype.bind,Ni=f(se(),{"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:p,"+":function(t,e,r,i){return r=r(t,e),i=i(t,e),v(r)?v(i)?r+i:r:v(i)?i:n},"-":function(t,e,n,r){return n=n(t,e),r=r(t,e),(v(n)?n:0)-(v(r)?r:0)},"*":function(t,e,n,r){return n(t,e)*r(t,e)},"/":function(t,e,n,r){return n(t,e)/r(t,e)},"%":function(t,e,n,r){return n(t,e)%r(t,e)},"^":function(t,e,n,r){return n(t,e)^r(t,e)},"=":p,"===":function(t,e,n,r){return n(t,e)===r(t,e)},"!==":function(t,e,n,r){return n(t,e)!==r(t,e)},"==":function(t,e,n,r){return n(t,e)==r(t,e)},"!=":function(t,e,n,r){return n(t,e)!=r(t,e)},"<":function(t,e,n,r){return n(t,e)<r(t,e)},">":function(t,e,n,r){return n(t,e)>r(t,e)},"<=":function(t,e,n,r){return n(t,e)<=r(t,e)},">=":function(t,e,n,r){return n(t,e)>=r(t,e)},"&&":function(t,e,n,r){return n(t,e)&&r(t,e)},"||":function(t,e,n,r){return n(t,e)||r(t,e)},"&":function(t,e,n,r){return n(t,e)&r(t,e)},"|":function(t,e,n,r){return r(t,e)(t,e,n(t,e))},"!":function(t,e,n){return!n(t,e)}}),Ti={n:"\n",f:"\f",r:"\r",t:"	",v:"","'":"'",'"':'"'},Pi=function(t){this.options=t};Pi.prototype={constructor:Pi,lex:function(t){for(this.text=t,this.index=0,this.ch=n,this.tokens=[];this.index<this.text.length;)if(this.ch=this.text.charAt(this.index),this.is("\"'"))this.readString(this.ch);else if(this.isNumber(this.ch)||this.is(".")&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(this.ch))this.readIdent();else if(this.is("(){}[].,;:?"))this.tokens.push({index:this.index,text:this.ch}),this.index++;else if(this.isWhitespace(this.ch))this.index++;else{var e=this.ch+this.peek(),r=e+this.peek(2),i=Ni[this.ch],a=Ni[e],o=Ni[r];o?(this.tokens.push({index:this.index,text:r,fn:o}),this.index+=3):a?(this.tokens.push({index:this.index,text:e,fn:a}),this.index+=2):i?(this.tokens.push({index:this.index,text:this.ch,fn:i}),this.index+=1):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(t){return-1!==t.indexOf(this.ch)},peek:function(t){var e=t||1;return this.index+e<this.text.length?this.text.charAt(this.index+e):!1},isNumber:function(t){return t>="0"&&"9">=t},isWhitespace:function(t){return" "===t||"\r"===t||"	"===t||"\n"===t||""===t||" "===t},isIdent:function(t){return t>="a"&&"z">=t||t>="A"&&"Z">=t||"_"===t||"$"===t},isExpOperator:function(t){return"-"===t||"+"===t||this.isNumber(t)},throwError:function(t,e,n){n=n||this.index;var r=v(e)?"s "+e+"-"+this.index+" ["+this.text.substring(e,n)+"]":" "+n;throw Ei("lexerr","Lexer Error: {0} at column{1} in expression [{2}].",t,r,this.text)},readNumber:function(){for(var t="",e=this.index;this.index<this.text.length;){var n=Er(this.text.charAt(this.index));if("."==n||this.isNumber(n))t+=n;else{var r=this.peek();if("e"==n&&this.isExpOperator(r))t+=n;else if(this.isExpOperator(n)&&r&&this.isNumber(r)&&"e"==t.charAt(t.length-1))t+=n;else{if(!this.isExpOperator(n)||r&&this.isNumber(r)||"e"!=t.charAt(t.length-1))break;this.throwError("Invalid exponent")}}this.index++}t=1*t,this.tokens.push({index:e,text:t,constant:!0,fn:function(){return t}})},readIdent:function(){for(var t,e,n,r,i=this,a="",o=this.index;this.index<this.text.length&&(r=this.text.charAt(this.index),"."===r||this.isIdent(r)||this.isNumber(r));)"."===r&&(t=this.index),a+=r,this.index++;if(t)for(e=this.index;e<this.text.length;){if(r=this.text.charAt(e),"("===r){n=a.substr(t-o+1),a=a.substr(0,t-o),this.index=e;break}if(!this.isWhitespace(r))break;e++}var s={index:o,text:a},u=Ni[a];if(u)s.fn=u,s.constant=!0;else{var c=On(a,this.options,this.text);s.fn=f(function(t,e){return c(t,e)},{assign:function(t,e){return An(t,a,e,i.text)}})}this.tokens.push(s),n&&(this.tokens.push({index:t,text:"."}),this.tokens.push({index:t+1,text:n}))},readString:function(t){var e=this.index;this.index++;for(var n="",r=t,i=!1;this.index<this.text.length;){var a=this.text.charAt(this.index);if(r+=a,i){if("u"===a){var o=this.text.substring(this.index+1,this.index+5);o.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+o+"]"),this.index+=4,n+=String.fromCharCode(parseInt(o,16))}else{var s=Ti[a];n+=s||a}i=!1}else if("\\"===a)i=!0;else{if(a===t)return this.index++,void this.tokens.push({index:e,text:r,string:n,constant:!0,fn:function(){return n}});n+=a}this.index++}this.throwError("Unterminated quote",e)}};var Vi=function(t,e,n){this.lexer=t,this.$filter=e,this.options=n};Vi.ZERO=f(function(){return 0},{constant:!0}),Vi.prototype={constructor:Vi,parse:function(t){this.text=t,this.tokens=this.lexer.lex(t);var e=this.statements();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),e.literal=!!e.literal,e.constant=!!e.constant,e},primary:function(){var t;if(this.expect("("))t=this.filterChain(),this.consume(")");else if(this.expect("["))t=this.arrayDeclaration();else if(this.expect("{"))t=this.object();else{var e=this.expect();t=e.fn,t||this.throwError("not a primary expression",e),e.constant&&(t.constant=!0,t.literal=!0)}for(var n,r;n=this.expect("(","[",".");)"("===n.text?(t=this.functionCall(t,r),r=null):"["===n.text?(r=t,t=this.objectIndex(t)):"."===n.text?(r=t,t=this.fieldAccess(t)):this.throwError("IMPOSSIBLE");return t},throwError:function(t,e){throw Ei("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",e.text,t,e.index+1,this.text,this.text.substring(e.index))},peekToken:function(){if(0===this.tokens.length)throw Ei("ueoe","Unexpected end of expression: {0}",this.text);return this.tokens[0]},peek:function(t,e,n,r){if(this.tokens.length>0){var i=this.tokens[0],a=i.text;if(a===t||a===e||a===n||a===r||!t&&!e&&!n&&!r)return i}return!1},expect:function(t,e,n,r){var i=this.peek(t,e,n,r);return i?(this.tokens.shift(),i):!1},consume:function(t){this.expect(t)||this.throwError("is unexpected, expecting ["+t+"]",this.peek())},unaryFn:function(t,e){return f(function(n,r){return t(n,r,e)},{constant:e.constant})},ternaryFn:function(t,e,n){return f(function(r,i){return t(r,i)?e(r,i):n(r,i)},{constant:t.constant&&e.constant&&n.constant})},binaryFn:function(t,e,n){return f(function(r,i){return e(r,i,t,n)},{constant:t.constant&&n.constant})},statements:function(){for(var t=[];;)if(this.tokens.length>0&&!this.peek("}",")",";","]")&&t.push(this.filterChain()),!this.expect(";"))return 1===t.length?t[0]:function(e,n){for(var r,i=0;i<t.length;i++){var a=t[i];a&&(r=a(e,n))}return r}},filterChain:function(){for(var t,e=this.expression();;){if(!(t=this.expect("|")))return e;e=this.binaryFn(e,t.fn,this.filter())}},filter:function(){var t,e,r=this.expect(),i=this.$filter(r.text);if(this.peek(":"))for(t=[],e=[];this.expect(":");)t.push(this.expression());return g(function(r,a,o){if(e){e[0]=o;for(var s=t.length;s--;)e[s+1]=t[s](r,a);return i.apply(n,e)}return i(o)})},expression:function(){return this.assignment()},assignment:function(){var t,e,n=this.ternary();return(e=this.expect("="))?(n.assign||this.throwError("implies assignment but ["+this.text.substring(0,e.index)+"] can not be assigned to",e),t=this.ternary(),function(e,r){return n.assign(e,t(e,r),r)}):n},ternary:function(){var t,e,n=this.logicalOR();return(e=this.expect("?"))?(t=this.assignment(),(e=this.expect(":"))?this.ternaryFn(n,t,this.assignment()):void this.throwError("expected :",e)):n},logicalOR:function(){for(var t,e=this.logicalAND();;){if(!(t=this.expect("||")))return e;e=this.binaryFn(e,t.fn,this.logicalAND())}},logicalAND:function(){var t,e=this.equality();return(t=this.expect("&&"))&&(e=this.binaryFn(e,t.fn,this.logicalAND())),e},equality:function(){var t,e=this.relational();return(t=this.expect("==","!=","===","!=="))&&(e=this.binaryFn(e,t.fn,this.equality())),e},relational:function(){var t,e=this.additive();return(t=this.expect("<",">","<=",">="))&&(e=this.binaryFn(e,t.fn,this.relational())),e},additive:function(){for(var t,e=this.multiplicative();t=this.expect("+","-");)e=this.binaryFn(e,t.fn,this.multiplicative());return e},multiplicative:function(){for(var t,e=this.unary();t=this.expect("*","/","%");)e=this.binaryFn(e,t.fn,this.unary());return e},unary:function(){var t;return this.expect("+")?this.primary():(t=this.expect("-"))?this.binaryFn(Vi.ZERO,t.fn,this.unary()):(t=this.expect("!"))?this.unaryFn(t.fn,this.unary()):this.primary()},fieldAccess:function(t){var e=this,n=this.expect().text,r=On(n,this.options,this.text);return f(function(e,n,i){return r(i||t(e,n))},{assign:function(r,i,a){var o=t(r,a);return o||t.assign(r,o={}),An(o,n,i,e.text)}})},objectIndex:function(t){var e=this,r=this.expression();return this.consume("]"),f(function(i,a){var o,s=t(i,a),u=r(i,a);return kn(u,e.text),s?o=Sn(s[u],e.text):n},{assign:function(n,i,a){var o=kn(r(n,a),e.text),s=Sn(t(n,a),e.text);return s||t.assign(n,s={}),s[o]=i}})},functionCall:function(t,e){var n=[];if(")"!==this.peekToken().text)do n.push(this.expression());while(this.expect(","));this.consume(")");var r=this.text,i=n.length?[]:null;return function(a,o){var s=e?e(a,o):a,u=t(a,o,s)||p;if(i)for(var c=n.length;c--;)i[c]=n[c](a,o);Sn(s,r),Cn(u,r);var l=u.apply?u.apply(s,i):u(i[0],i[1],i[2],i[3],i[4]);return Sn(l,r)}},arrayDeclaration:function(){var t=[],e=!0;if("]"!==this.peekToken().text)do{if(this.peek("]"))break;var n=this.expression();t.push(n),n.constant||(e=!1)}while(this.expect(","));return this.consume("]"),f(function(e,n){for(var r=[],i=0;i<t.length;i++)r.push(t[i](e,n));return r},{literal:!0,constant:e})},object:function(){var t=[],e=!0;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;var n=this.expect(),r=n.string||n.text;
this.consume(":");var i=this.expression();t.push({key:r,value:i}),i.constant||(e=!1)}while(this.expect(","));return this.consume("}"),f(function(e,n){for(var r={},i=0;i<t.length;i++){var a=t[i];r[a.key]=a.value(e,n)}return r},{literal:!0,constant:e})}};var Di=se(),qi=r("$sce"),Ri={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},_i=e.createElement("a"),Ui=Ln(t.location.href,!0);Gn.$inject=["$provide"],Jn.$inject=["$locale"],Qn.$inject=["$locale"];var Ii=".",Hi={yyyy:Zn("FullYear",4),yy:Zn("FullYear",2,0,!0),y:Zn("FullYear",1),MMMM:Kn("Month"),MMM:Kn("Month",!0),MM:Zn("Month",2,1),M:Zn("Month",1,1),dd:Zn("Date",2),d:Zn("Date",1),HH:Zn("Hours",2),H:Zn("Hours",1),hh:Zn("Hours",2,-12),h:Zn("Hours",1,-12),mm:Zn("Minutes",2),m:Zn("Minutes",1),ss:Zn("Seconds",2),s:Zn("Seconds",1),sss:Zn("Milliseconds",3),EEEE:Kn("Day"),EEE:Kn("Day",!0),a:ir,Z:tr,ww:rr(2),w:rr(1)},Fi=/((?:[^yMdHhmsaZEw']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|w+))(.*)/,Li=/^\-?\d+$/;ar.$inject=["$locale"];var zi=g(Er),Bi=g(jr);ur.$inject=["$parse"];var Gi=g({restrict:"E",compile:function(t,n){return 8>=Tr&&(n.href||n.name||n.$set("href",""),t.append(e.createComment("IE fix"))),n.href||n.xlinkHref||n.name?void 0:function(t,e){var n="[object SVGAnimatedString]"===Ur.call(e.prop("href"))?"xlink:href":"href";e.on("click",function(t){e.attr(n)||t.preventDefault()})}}}),Wi={};a(fi,function(t,e){if("multiple"!=t){var n=Ge("ng-"+e);Wi[n]=function(){return{restrict:"A",priority:100,link:function(t,r,i){t.$watch(i[n],function(t){i.$set(e,!!t)})}}}}}),a(di,function(t,e){Wi[e]=function(){return{priority:100,link:function(t,n,r){if("ngPattern"===e&&"/"==r.ngPattern.charAt(0)){var i=r.ngPattern.match(Cr);if(i)return void r.$set("ngPattern",new RegExp(i[1],i[2]))}t.$watch(r[e],function(t){r.$set(e,t)})}}}}),a(["src","srcset","href"],function(t){var e=Ge("ng-"+t);Wi[e]=function(){return{priority:99,link:function(n,r,i){var a=t,o=t;"href"===t&&"[object SVGAnimatedString]"===Ur.call(r.prop("href"))&&(o="xlinkHref",i.$attr[o]="xlink:href",a=null),i.$observe(e,function(e){return e?(i.$set(o,e),void(Tr&&a&&r.prop(a,i[o]))):void("href"===t&&i.$set(o,null))})}}}});var Ji={$addControl:p,$removeControl:p,$setValidity:p,$setDirty:p,$setPristine:p,$setSubmitted:p},Qi="ng-submitted";lr.$inject=["$element","$attrs","$scope","$animate"];var Xi=function(t){return["$timeout",function(e){var r={name:"form",restrict:t?"EAC":"E",controller:lr,compile:function(){return{pre:function(t,r,i,a){if(!i.action){var o=function(e){t.$apply(function(){a.$commitViewValue(),a.$setSubmitted()}),e.preventDefault?e.preventDefault():e.returnValue=!1};Kr(r[0],"submit",o),r.on("$destroy",function(){e(function(){ti(r[0],"submit",o)},0,!1)})}var s=r.parent().controller("form"),u=i.name||i.ngForm;u&&An(t,u,a,u),s&&r.on("$destroy",function(){s.$removeControl(a),u&&An(t,u,n,u),f(a,Ji)})}}}};return r}]},Yi=Xi(),Zi=Xi(!0),Ki=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,ta=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,ea=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,na=/^(\d{4})-(\d{2})-(\d{2})$/,ra=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)$/,ia=/^(\d{4})-W(\d\d)$/,aa=/^(\d{4})-(\d\d)$/,oa=/^(\d\d):(\d\d)$/,sa=/(\s+|^)default(\s+|$)/,ua={text:pr,date:mr("date",na,gr(na,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":mr("datetimelocal",ra,gr(ra,["yyyy","MM","dd","HH","mm"]),"yyyy-MM-ddTHH:mm"),time:mr("time",oa,gr(oa,["HH","mm"]),"HH:mm"),week:mr("week",ia,$r,"yyyy-Www"),month:mr("month",aa,gr(aa,["yyyy","MM"]),"yyyy-MM"),number:vr,url:yr,email:br,radio:wr,checkbox:kr,hidden:p,button:p,submit:p,reset:p,file:p},ca=["badInput"],la=["$browser","$sniffer","$filter","$parse",function(t,e,n,r){return{restrict:"E",require:["?ngModel"],link:function(i,a,o,s){s[0]&&(ua[Er(o.type)]||ua.text)(i,a,o,s[0],e,t,n,r)}}}],fa="ng-valid",ha="ng-invalid",da="ng-pristine",pa="ng-dirty",$a="ng-untouched",ga="ng-touched",ma=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout",function(t,e,i,o,s,u,c){function l(t,e){e=e?"-"+te(e,"-"):"",u.removeClass(o,(t?ha:fa)+e),u.addClass(o,(t?fa:ha)+e)}this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$validators={},this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$untouched=!0,this.$touched=!1,this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$name=i.name;var f=s(i.ngModel),h=f.assign,d=null,$=this;if(!h)throw r("ngModel")("nonassign","Expression '{0}' is non-assignable. Element: {1}",i.ngModel,B(o));this.$render=p,this.$isEmpty=function(t){return m(t)||""===t||null===t||t!==t};var g=o.inheritedData("$formController")||Ji,y=0,b=this.$error={};o.addClass(da).addClass($a),l(!0),this.$setValidity=function(t,e){b[t]!==!e&&(e?(b[t]&&y--,y||(l(!0),$.$valid=!0,$.$invalid=!1)):(l(!1),$.$invalid=!0,$.$valid=!1,y++),b[t]=!e,l(e,t),g.$setValidity(t,e,$))},this.$setPristine=function(){$.$dirty=!1,$.$pristine=!0,u.removeClass(o,pa),u.addClass(o,da)},this.$setUntouched=function(){$.$touched=!1,$.$untouched=!0,u.setClass(o,$a,ga)},this.$setTouched=function(){$.$touched=!0,$.$untouched=!1,u.setClass(o,ga,$a)},this.$rollbackViewValue=function(){c.cancel(d),$.$viewValue=$.$$lastCommittedViewValue,$.$render()},this.$validate=function(){if($.$modelValue===$.$modelValue){var t=$.$modelValue;$.$$runValidators($.$$invalidModelValue||$.$modelValue,$.$viewValue),t!==$.$modelValue&&$.$$writeModelToScope()}},this.$$runValidators=function(t,e){a($.$validators,function(n,r){$.$setValidity(r,n(t,e))}),$.$modelValue=$.$valid?t:n,$.$$invalidModelValue=$.$valid?n:t},this.$commitViewValue=function(t){var e=$.$viewValue;if(c.cancel(d),t||$.$$lastCommittedViewValue!==e){$.$$lastCommittedViewValue=e,$.$pristine&&($.$dirty=!0,$.$pristine=!1,u.removeClass(o,da),u.addClass(o,pa),g.$setDirty());var n=e;a($.$parsers,function(t){n=t(n)}),$.$modelValue===n||!m($.$$invalidModelValue)&&$.$$invalidModelValue==n||($.$$runValidators(n,e),$.$$writeModelToScope())}},this.$$writeModelToScope=function(){var n;$.$options&&$.$options.getterSetter&&k(n=f(t))?n($.$modelValue):h(t,$.$modelValue),a($.$viewChangeListeners,function(t){try{t()}catch(n){e(n)}})},this.$setViewValue=function(t,e,n){$.$viewValue=t,(!$.$options||$.$options.updateOnDefault)&&$.$$debounceViewValueCommit(e,n)},this.$$debounceViewValueCommit=function(t,e){var n,r=0,i=$.$options;i&&v(i.debounce)&&(n=i.debounce,w(n)?r=n:w(n[t])?r=n[t]:w(n["default"])&&(r=n["default"])),c.cancel(d),r?d=c(function(){$.$commitViewValue(e)},r):$.$commitViewValue(e)},t.$watch(function(){var e=f(t);if($.$options&&$.$options.getterSetter&&k(e)&&(e=e()),$.$modelValue!==e&&(m($.$$invalidModelValue)||$.$$invalidModelValue!=e)){for(var n=$.$formatters,r=n.length,i=e;r--;)i=n[r](i);$.$$runValidators(e,i),$.$viewValue!==i&&($.$viewValue=$.$$lastCommittedViewValue=i,$.$render())}return e})}],va=function(){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:ma,link:{pre:function(t,e,n,r){r[2]&&(r[0].$options=r[2].$options);var i=r[0],a=r[1]||Ji;a.$addControl(i),t.$on("$destroy",function(){a.$removeControl(i)})},post:function(t,e,n,r){var i=r[0];i.$options&&i.$options.updateOn&&e.on(i.$options.updateOn,function(e){t.$apply(function(){i.$$debounceViewValueCommit(e&&e.type)})}),e.on("blur",function(){i.$touched||t.$apply(function(){i.$setTouched()})})}}}},ya=g({restrict:"A",require:"ngModel",link:function(t,e,n,r){r.$viewChangeListeners.push(function(){t.$eval(n.ngChange)})}}),ba=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,n,r){r&&(n.required=!0,r.$validators.required=function(t,e){return!n.required||!r.$isEmpty(e)},n.$observe("required",function(){r.$validate()}))}}},wa=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,i,a){if(a){var o,s=i.ngPattern||i.pattern;i.$observe("pattern",function(t){if(b(t)&&t.length>0&&(t=new RegExp(t)),t&&!t.test)throw r("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",s,t,B(e));o=t||n,a.$validate()}),a.$validators.pattern=function(t){return a.$isEmpty(t)||m(o)||o.test(t)}}}}},xa=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,n,r){if(r){var i=0;n.$observe("maxlength",function(t){i=h(t)||0,r.$validate()}),r.$validators.maxlength=function(t){return r.$isEmpty(t)||t.length<=i}}}}},ka=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,n,r){if(r){var i=0;n.$observe("minlength",function(t){i=h(t)||0,r.$validate()}),r.$validators.minlength=function(t){return r.$isEmpty(t)||t.length>=i}}}}},Sa=function(){return{restrict:"A",require:"ngModel",link:function(t,e,r,i){var o=e.attr(r.$attr.ngList)||", ",s="false"!==r.ngTrim,u=s?zr(o):o,c=function(t){if(!m(t)){var e=[];return t&&a(t.split(u),function(t){t&&e.push(s?zr(t):t)}),e}};i.$parsers.push(c),i.$formatters.push(function(t){return Lr(t)?t.join(o):n}),i.$isEmpty=function(t){return!t||!t.length}}}},Ca=/^(true|false|\d+)$/,Aa=function(){return{restrict:"A",priority:100,compile:function(t,e){return Ca.test(e.ngValue)?function(t,e,n){n.$set("value",t.$eval(n.ngValue))}:function(t,e,n){t.$watch(n.ngValue,function(t){n.$set("value",t)})}}}},Ea=function(){return{restrict:"A",controller:["$scope","$attrs",function(t,e){var r=this;this.$options=t.$eval(e.ngModelOptions),this.$options.updateOn!==n?(this.$options.updateOnDefault=!1,this.$options.updateOn=zr(this.$options.updateOn.replace(sa,function(){return r.$options.updateOnDefault=!0," "}))):this.$options.updateOnDefault=!0}]}},Oa=cr({compile:function(t){return t.addClass("ng-binding"),function(t,e,r){e.data("$binding",r.ngBind),e=e[0],t.$watch(r.ngBind,function(t){e.textContent=t==n?"":t})}}}),ja=["$interpolate",function(t){return function(e,n,r){var i=t(n.attr(r.$attr.ngBindTemplate));n.addClass("ng-binding").data("$binding",i),r.$observe("ngBindTemplate",function(t){n.text(t)})}}],Ma=["$sce","$parse",function(t,e){return{restrict:"A",compile:function(n){return n.addClass("ng-binding"),function(n,r,i){r.data("$binding",i.ngBindHtml);var a=e(i.ngBindHtml),o=e(i.ngBindHtml,function(t){return(t||"").toString()});n.$watch(o,function(){r.html(t.getTrustedHtml(a(n))||"")})}}}}],Na=Sr("",!0),Ta=Sr("Odd",0),Pa=Sr("Even",1),Va=cr({compile:function(t,e){e.$set("ngCloak",n),t.removeClass("ng-cloak")}}),Da=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],qa={};a("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(t){var e=Ge("ng-"+t);qa[e]=["$parse",function(n){return{restrict:"A",compile:function(r,i){var a=n(i[e]);return function(e,n){n.on(Er(t),function(t){e.$apply(function(){a(e,{$event:t})})})}}}}]});var Ra=["$animate",function(t){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(n,r,i,a,o){var s,u,c;n.$watch(i.ngIf,function(n){n?u||o(function(n,a){u=a,n[n.length++]=e.createComment(" end ngIf: "+i.ngIf+" "),s={clone:n},t.enter(n,r.parent(),r)}):(c&&(c.remove(),c=null),u&&(u.$destroy(),u=null),s&&(c=oe(s.clone),t.leave(c,function(){c=null}),s=null))})}}}],_a=["$http","$templateCache","$anchorScroll","$animate","$sce",function(t,e,n,r,i){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:Hr.noop,compile:function(a,o){var s=o.ngInclude||o.src,u=o.onload||"",c=o.autoscroll;return function(a,o,l,f,h){var d,p,$,g=0,m=function(){p&&(p.remove(),p=null),d&&(d.$destroy(),d=null),$&&(r.leave($,function(){p=null}),p=$,$=null)};a.$watch(i.parseAsResourceUrl(s),function(i){var s=function(){!v(c)||c&&!a.$eval(c)||n()},l=++g;i?(t.get(i,{cache:e}).success(function(t){if(l===g){var e=a.$new();f.template=t;var n=h(e,function(t){m(),r.enter(t,null,o,s)});d=e,$=n,d.$emit("$includeContentLoaded"),a.$eval(u)}}).error(function(){l===g&&(m(),a.$emit("$includeContentError"))}),a.$emit("$includeContentRequested")):(m(),f.template=null)})}}}}],Ua=["$compile",function(t){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(e,n,r,i){n.html(i.template),t(n.contents())(e)}}}],Ia=cr({priority:450,compile:function(){return{pre:function(t,e,n){t.$eval(n.ngInit)}}}}),Ha=cr({terminal:!0,priority:1e3}),Fa=["$locale","$interpolate",function(t,e){var n=/{}/g;return{restrict:"EA",link:function(r,i,o){var s=o.count,u=o.$attr.when&&i.attr(o.$attr.when),c=o.offset||0,l=r.$eval(u)||{},f={},h=e.startSymbol(),d=e.endSymbol(),p=/^when(Minus)?(.+)$/;a(o,function(t,e){p.test(e)&&(l[Er(e.replace("when","").replace("Minus","-"))]=i.attr(o.$attr[e]))}),a(l,function(t,r){f[r]=e(t.replace(n,h+s+"-"+c+d))}),r.$watch(function(){var e=parseFloat(r.$eval(s));return isNaN(e)?"":(e in l||(e=t.pluralCat(e-c)),f[e](r))},function(t){i.text(t)})}}}],La=["$parse","$animate",function(t,o){var s="$$NG_REMOVED",u=r("ngRepeat"),c=function(t,e,n,r,i,a,o){t[n]=r,i&&(t[i]=a),t.$index=e,t.$first=0===e,t.$last=e===o-1,t.$middle=!(t.$first||t.$last),t.$odd=!(t.$even=0===(1&e))},l=function(t){return t.clone[0]},f=function(t){return t.clone[t.clone.length-1]};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(r,h){var d=h.ngRepeat,p=e.createComment(" end ngRepeat: "+d+" "),$=d.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!$)throw u("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",d);var g=$[1],m=$[2],v=$[3],y=$[4];if($=g.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/),!$)throw u("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",g);var b=$[3]||$[1],w=$[2];if(v&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(v)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent)$/.test(v)))throw u("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",v);var x,k,S,C,A={$id:Ve};return y?x=t(y):(S=function(t,e){return Ve(e)},C=function(t){return t}),function(t,e,r,h,$){x&&(k=function(e,n,r){return w&&(A[w]=e),A[b]=n,A.$index=r,x(t,A)});var g=se();t.$watchCollection(m,function(r){var h,m,y,x,A,E,O,j,M,N,T,P,V=e[0],D=se();if(v&&(t[v]=r),i(r))M=r,j=k||S;else{j=k||C,M=[];for(var q in r)r.hasOwnProperty(q)&&"$"!=q.charAt(0)&&M.push(q);M.sort()}for(x=M.length,T=new Array(x),h=0;x>h;h++)if(A=r===M?h:M[h],E=r[A],O=j(A,E,h),g[O])N=g[O],delete g[O],D[O]=N,T[h]=N;else{if(D[O])throw a(T,function(t){t&&t.scope&&(g[t.id]=t)}),u("dupes","Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}",d,O);T[h]={id:O,scope:n,clone:n},D[O]=!0}for(var R in g){if(N=g[R],P=oe(N.clone),o.leave(P),P[0].parent)for(h=0,m=P.length;m>h;h++)P[h][s]=!0;N.scope.$destroy()}for(h=0;x>h;h++)if(A=r===M?h:M[h],E=r[A],N=T[h],N.scope){y=V;do y=y.nextSibling;while(y&&y[s]);l(N)!=y&&o.move(oe(N.clone),null,Pr(V)),V=f(N),c(N.scope,h,b,E,w,A,x)}else $(function(t,e){N.scope=e;var n=p.cloneNode();t[t.length++]=n,o.enter(t,null,Pr(V)),V=n,N.clone=t,D[N.id]=N,c(N.scope,h,b,E,w,A,x)});g=D})}}}}],za=["$animate",function(t){return{restrict:"A",multiElement:!0,link:function(e,n,r){e.$watch(r.ngShow,function(e){t[e?"removeClass":"addClass"](n,"ng-hide")})}}}],Ba=["$animate",function(t){return{restrict:"A",multiElement:!0,link:function(e,n,r){e.$watch(r.ngHide,function(e){t[e?"addClass":"removeClass"](n,"ng-hide")})}}}],Ga=cr(function(t,e,n){t.$watch(n.ngStyle,function(t,n){n&&t!==n&&a(n,function(t,n){e.css(n,"")}),t&&e.css(t)},!0)}),Wa=["$animate",function(t){return{restrict:"EA",require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(n,r,i,o){var s=i.ngSwitch||i.on,u=[],c=[],l=[],f=[];n.$watch(s,function(r){var s,h;for(s=0,h=l.length;h>s;++s)l[s].remove();for(l.length=0,s=0,h=f.length;h>s;++s){var d=oe(c[s].clone);f[s].$destroy(),l[s]=d,t.leave(d,function(){l.splice(s,1)})}c.length=0,f.length=0,(u=o.cases["!"+r]||o.cases["?"])&&(n.$eval(i.change),a(u,function(n){n.transclude(function(r,i){f.push(i);var a=n.element;r[r.length++]=e.createComment(" end ngSwitchWhen: ");var o={clone:r};c.push(o),t.enter(r,a.parent(),a)})}))})}}}],Ja=cr({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(t,e,n,r,i){r.cases["!"+n.ngSwitchWhen]=r.cases["!"+n.ngSwitchWhen]||[],r.cases["!"+n.ngSwitchWhen].push({transclude:i,element:e})}}),Qa=cr({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(t,e,n,r,i){r.cases["?"]=r.cases["?"]||[],r.cases["?"].push({transclude:i,element:e})}}),Xa=cr({restrict:"EAC",link:function(t,e,n,i,a){if(!a)throw r("ngTransclude")("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",B(e));a(function(t){e.empty(),e.append(t)})}}),Ya=["$templateCache",function(t){return{restrict:"E",terminal:!0,compile:function(e,n){if("text/ng-template"==n.type){var r=n.id,i=e[0].text;t.put(r,i)}}}}],Za=r("ngOptions"),Ka=g({restrict:"A",terminal:!0}),to=["$compile","$parse",function(t,r){var i=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,s={$setViewValue:p};return{restrict:"E",require:["select","?ngModel"],controller:["$element","$scope","$attrs",function(t,e,n){var r,i,a=this,o={},u=s;a.databound=n.ngModel,a.init=function(t,e,n){u=t,r=e,i=n},a.addOption=function(e,n){ie(e,'"option value"'),o[e]=!0,u.$viewValue==e&&(t.val(e),i.parent()&&i.remove()),n[0].hasAttribute("selected")&&(n[0].selected=!0)},a.removeOption=function(t){this.hasOption(t)&&(delete o[t],u.$viewValue==t&&this.renderUnknownOption(t))},a.renderUnknownOption=function(e){var n="? "+Ve(e)+" ?";i.val(n),t.prepend(i),t.val(n),i.prop("selected",!0)},a.hasOption=function(t){return o.hasOwnProperty(t)},e.$on("$destroy",function(){a.renderUnknownOption=p})}],link:function(s,u,c,l){function f(t,e,n,r){n.$render=function(){var t=n.$viewValue;r.hasOption(t)?(S.parent()&&S.remove(),e.val(t),""===t&&p.prop("selected",!0)):m(t)&&p?e.val(""):r.renderUnknownOption(t)},e.on("change",function(){t.$apply(function(){S.parent()&&S.remove(),n.$setViewValue(e.val())})})}function h(t,e,n){var r;n.$render=function(){var t=new De(n.$viewValue);a(e.find("option"),function(e){e.selected=v(t.get(e.value))})},t.$watch(function(){_(r,n.$viewValue)||(r=R(n.$viewValue),n.$render())}),e.on("change",function(){t.$apply(function(){var t=[];a(e.find("option"),function(e){e.selected&&t.push(e.value)}),n.$setViewValue(t)})})}function d(e,a,s){function u(){var t=!1;if(y){var n=s.$modelValue;if(S&&Lr(n)){t=new De([]);for(var r={},i=0;i<n.length;i++)r[h]=n[i],t.put(S(e,r),n[i])}else t=new De(n)}return t}function c(){var t,n,r,i,c,l,m,b,A,E,O,j,M,N,T,P={"":[]},V=[""],D=s.$modelValue,q=g(e)||[],R=d?o(q):q,_={},U=u();for(O=0;A=R.length,A>O;O++){if(m=O,d){if(m=R[O],"$"===m.charAt(0))continue;_[d]=m}if(_[h]=q[m],t=p(e,_)||"",(n=P[t])||(n=P[t]=[],V.push(t)),y)j=v(U.remove(S?S(e,_):$(e,_)));else{if(S){var I={};I[h]=D,j=S(e,I)===S(e,_)}else j=D===$(e,_);U=U||j}T=f(e,_),T=v(T)?T:"",n.push({id:S?S(e,_):d?R[O]:O,label:T,selected:j})}for(y||(w||null===D?P[""].unshift({id:"",label:"",selected:!U}):U||P[""].unshift({id:"?",label:"",selected:!0})),E=0,b=V.length;b>E;E++){for(t=V[E],n=P[t],C.length<=E?(i={element:k.clone().attr("label",t),label:n.label},c=[i],C.push(c),a.append(i.element)):(c=C[E],i=c[0],i.label!=t&&i.element.attr("label",i.label=t)),M=null,O=0,A=n.length;A>O;O++)r=n[O],(l=c[O+1])?(M=l.element,l.label!==r.label&&M.text(l.label=r.label),l.id!==r.id&&M.val(l.id=r.id),M[0].selected!==r.selected&&(M.prop("selected",l.selected=r.selected),Tr&&M.prop("selected",l.selected))):(""===r.id&&w?N=w:(N=x.clone()).val(r.id).prop("selected",r.selected).attr("selected",r.selected).text(r.label),c.push(l={element:N,label:r.label,id:r.id,selected:r.selected}),M?M.after(N):i.element.append(N),M=N);for(O++;c.length>O;)c.pop().element.remove()}for(;C.length>E;)C.pop()[0].element.remove()}var l;if(!(l=b.match(i)))throw Za("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",b,B(a));var f=r(l[2]||l[1]),h=l[4]||l[6],d=l[5],p=r(l[3]||""),$=r(l[2]?l[1]:h),g=r(l[7]),m=l[8],S=m?r(l[8]):null,C=[[{element:a,label:""}]];w&&(t(w)(e),w.removeClass("ng-scope"),w.remove()),a.empty(),a.on("change",function(){e.$apply(function(){var t,r,i,o,u,l,f,p,m,v=g(e)||[],b={};if(y){for(i=[],l=0,p=C.length;p>l;l++)for(t=C[l],u=1,f=t.length;f>u;u++)if((o=t[u].element)[0].selected){if(r=o.val(),d&&(b[d]=r),S)for(m=0;m<v.length&&(b[h]=v[m],S(e,b)!=r);m++);else b[h]=v[r];i.push($(e,b))}}else if(r=a.val(),"?"==r)i=n;else if(""===r)i=null;else if(S){for(m=0;m<v.length;m++)if(b[h]=v[m],S(e,b)==r){i=$(e,b);break}}else b[h]=v[r],d&&(b[d]=r),i=$(e,b);s.$setViewValue(i),c()})}),s.$render=c,e.$watchCollection(g,c),y&&e.$watchCollection(function(){return s.$modelValue},c)}if(l[1]){for(var p,$=l[0],g=l[1],y=c.multiple,b=c.ngOptions,w=!1,x=Pr(e.createElement("option")),k=Pr(e.createElement("optgroup")),S=x.clone(),C=0,A=u.children(),E=A.length;E>C;C++)if(""===A[C].value){p=w=A.eq(C);break}$.init(g,w,S),y&&(g.$isEmpty=function(t){return!t||0===t.length}),b?d(s,u,g):y?h(s,u,g):f(s,u,g,$)}}}}],eo=["$interpolate",function(t){var e={addOption:p,removeOption:p};return{restrict:"E",priority:100,compile:function(n,r){if(m(r.value)){var i=t(n.text(),!0);i||r.$set("value",n.text())}return function(t,n,r){var a="$selectController",o=n.parent(),s=o.data(a)||o.parent().data(a);s&&s.databound?n.prop("selected",!1):s=e,i?t.$watch(i,function(t,e){r.$set("value",t),e!==t&&s.removeOption(e),s.addOption(t,n)}):s.addOption(r.value,n),n.on("$destroy",function(){s.removeOption(r.value)})}}}}],no=g({restrict:"E",terminal:!1});return t.angular.bootstrap?void console.log("WARNING: Tried to load angular more than once."):(ee(),ce(Hr),void Pr(e).ready(function(){Z(e,K)}))}(window,document),!window.angular.$$csp()&&window.angular.element(document).find("head").prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-animate){display:none !important;}ng\\:form{display:block;}</style>'),angular.module("app",["angularplasmid"]),function(){"use strict";angular.module("angularplasmid.services",[]).factory("SVGUtil",function(){function t(t,e){var n="round";return"undefined"==typeof e||0===+e?Math[n](t):(t=+t,e=+e,isNaN(t)||"number"!=typeof e||e%1!==0?0/0:(t=t.toString().split("e"),t=Math[n](+(t[0]+"e"+(t[1]?+t[1]-e:-e))),t=t.toString().split("e"),+(t[0]+"e"+(t[1]?+t[1]+e:e))))}function e(t){h.push(t)}function n(t){var e;for(e=0;e<h.length;e+=1)if(h[e].id===t)return h[e]}function r(t,e,n,r){var i=(r-90)*Math.PI/180;return{x:t+n*Math.cos(i),y:e+n*Math.sin(i)}}function i(t,e){var n,r,i=["id","name","class","style","filter","ng-attr-style","ng-attr-class","ng-class"];for(r=0;r<i.length;r+=1)n=i[r],t[0].hasAttribute(n)&&(e.attr(n,t.attr(n)),t.removeAttr(n))}function a(t,e,n){var r,i="http://www.w3.org/2000/svg",a=document.createElementNS(i,t);return n=n||[],angular.forEach(e,function(t){n.indexOf(t)<0&&(r=e[t],null===r||t.match(/\$/)||"string"==typeof r&&""===r||a.setAttribute(t,r))}),a}function o(t){angular.forEach(["id","class","style"],function(e){t.removeAttribute(e)})}function s(t,e,n,i){var a,o,s;return t=Number(t||0),e=Number(e||0),n=Number(n||0),i=Number(i||0),a={start:r(t,e,n,359.99),end:r(t,e,n,0)},o={start:r(t,e,n+i,359.99),end:r(t,e,n+i,0)},s=["M",a.start.x,a.start.y,"A",n,n,0,1,0,a.end.x,a.end.y,"M",o.start.x,o.start.y,"A",n+i,n+i,0,1,0,o.end.x,o.end.y].join(" ")}function u(t,e,n,i,a,o,s,u){var c,l,f,h,d,p,$,g,m,v,y,b,w;return t=Number(t),e=Number(e),n=Number(n),i=Number(i),a=Number(a),o=Number(o),s=s||{width:0,length:0,angle:0},u=u||{width:0,length:0,angle:0},i===a?(l=r(t,e,n,i),h=r(t,e,n+o,i),c=["M",l.x,l.y,"L",h.x,h.y].join(" ")):1===o?(l=r(t,e,n,i),h=r(t,e,n,a),d=a>i?180>=a-i?"0":"1":180>=a-i?"1":"0",c=["M",l.x,l.y,"A",n,n,0,d,1,h.x,h.y].join(" ")):(a-=u.length<0?0:u.length,i+=s.length<0?0:s.length,l=r(t,e,n,a),h=r(t,e,n,i),p=r(t,e,n-s.width,i+s.angle),$=r(t,e,n+o/2,i-s.length),g=r(t,e,n+o+s.width,i+s.angle),m=r(t,e,n+o,i),v=r(t,e,n+o+u.width,a-u.angle),y=r(t,e,n+o/2,a+u.length),b=r(t,e,n-u.width,a-u.angle),w=r(t,e,n,a),f=r(t,e,n+o,a),d=180>=a-i?"0":"1",c=["M",l.x,l.y,"A",n,n,0,d,0,h.x,h.y,"L",p.x,p.y,"L",$.x,$.y,"L",g.x,g.y,"L",m.x,m.y,"A",n+o,n+o,0,d,1,f.x,f.y,"L",v.x,v.y,"L",y.x,y.y,"L",b.x,b.y,"L",w.x,w.y,"z"].join(" ")),c}function c(e,n,r,i,a,o){e=Number(e||0),n=Number(n||0),r=Number(r||0),i=Number(i||0),a=Number(a||0),o=Number(o||2);var s,u,c,l,f=Number(i)>0?Number(a)/Number(i):0,h=2*Math.PI/f,d=-1,p="";for(l=0;f>l;l+=1)s=h*l-Math.PI/2,c=Math.cos(s),u=Math.sin(s),p+="M"+t(e+r*c,d)+","+t(n+r*u,d)+" L"+t(e+(r+o)*c,d)+","+t(n+(r+o)*u,d)+" ";return p=p||"M 0,0"}function l(e,n,r,i,a){e=Number(e),n=Number(n),r=Number(r),i=Number(i),a=Number(a);var o,s,u,c,l=Number(i)>0?Number(a)/Number(i):0,f=2*Math.PI/l,h=-1,d=[];for(c=0;l>c;c+=1)o=f*c-Math.PI/2,u=Math.cos(o),s=Math.sin(o),d.push({x:t(e+r*u,h),y:t(n+r*s,h),text:i*c});return d}function f(t,e){return isNaN(t)?e||0:Number(t)}var h=[],d=[],p=[];return{api:{addPlasmid:e,plasmids:h,plasmid:n,plasmidtracks:d,trackmarkers:p},util:{polarToCartesian:r,swapProperties:i,Numeric:f},svg:{createNode:a,removeAttributes:o,path:{donut:s,arc:u,scale:c},element:{scalelabels:l}}}})}(),function(){"use strict";angular.module("angularplasmid",["angularplasmid.services"]).directive("plasmidapi",["SVGUtil",function(t){return{restrict:"AE",link:function(e,n,r){e[r.name]=t.api}}}]).directive("plasmid",["SVGUtil",function(){return{restrict:"AE",type:"svg",template:'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"></svg>',replace:!0,transclude:!0,require:"plasmid",scope:{plasmidheight:"@",plasmidwidth:"@",sequencelength:"@",sequence:"@",plasmidclass:"@",plasmidstyle:"@"},link:{pre:function(t,e,n,r){r.init(e)},post:function(t,e,n,r,i){i(t.$parent,function(t){e.append(t)}),t.$watchGroup(["plasmidheight","plasmidwidth","sequencelength","sequence","plasmidclass","plasmidstyle"],function(){r.draw()})}},controller:["$scope","SVGUtil",function(t,e){var n,r,i=[];r=this,r.elementtype="plasmid",r.init=function(t){e.api.addPlasmid(r),n=t,r.id=n.attr("id")},r.draw=function(){var t=r.dimensions,e=n.plasmidclass,a=n.plasmidstyle;n.attr("height",t.height),n.attr("width",t.width),e&&n.attr("class",e),a&&n.attr("style",a),angular.forEach(i,function(t){t.draw()})},r.addTrack=function(t){i.push(t)},Object.defineProperty(r,"center",{get:function(){var t=r.dimensions;return{x:t.width/2,y:t.height/2}}}),Object.defineProperty(r,"dimensions",{get:function(){return{height:e.util.Numeric(t.plasmidheight,300),width:e.util.Numeric(t.plasmidwidth,300)}}}),Object.defineProperty(r,"sequencelength",{get:function(){return r.sequence?r.sequence.length:e.util.Numeric(t.sequencelength)}}),Object.defineProperty(r,"sequence",{get:function(){return t.sequence}}),Object.defineProperty(r,"plasmidclass",{get:function(){return t.plasmidclass}}),Object.defineProperty(r,"plasmidstyle",{get:function(){return t.plasmidstyle}}),r.tracks=i}]}}]).directive("plasmidtrack",["SVGUtil","$compile",function(t,e){return{restrict:"AE",type:"svg",template:"<g><path></path></g>",replace:!0,transclude:!0,require:["plasmidtrack","^plasmid"],scope:{radius:"@",width:"@",trackclass:"@",trackstyle:"@",trackclick:"&"},link:{pre:function(t,e,n,r){var i=r[0],a=r[1],o=angular.element(e.children()[0]);i.init(o,a)},post:function(n,r,i,a,o){o(n.$parent,function(t){r.append(t)});var s=angular.element(r),u=angular.element(r.children()[0]),c=a[0];t.util.swapProperties(s,u),u.attr("fill-rule","evenodd"),e(u)(n.$parent),u.on("click",function(t){n.trackclick({$event:t,$track:c})}),n.$watchGroup(["radius","width","trackstyle","trackclass"],function(){c.draw()})}},controller:["$scope",function(e){var n,r,i,a=[],o=[],s=[];i=this,i.elementtype="plasmidtrack",i.init=function(t,e){n=e,n.addTrack(i),i.plasmid=n,r=t},i.draw=function(){var e=i.center,n=t.svg.path.donut(e.x,e.y,i.radius,i.width),u=i.trackclass,c=i.trackstyle;r.attr("d",n),u&&r.attr("class",u),c&&r.attr("style",c),angular.forEach(a,function(t){t.draw()}),angular.forEach(o,function(t){t.draw()}),angular.forEach(s,function(t){t.draw()})},i.addMarker=function(t){a.push(t)},i.addScale=function(t){o.push(t)},i.addLabel=function(t){s.push(t)},i.markergroup=function(t){var e=[];return angular.forEach(a,function(n){n.markergroup===t&&e.push(n)}),e},i.getPosition=function(e,r,a){a=Number(a||0),e=Number(e);var o,s,u=1,c=2,l=i.center,f=n.sequencelength;if(f>0){switch(s=e/f*360,r){case u:o=i.radius+a;break;case c:o=i.radius+i.width+a;break;default:o=i.radius+i.width/2+a}return t.util.polarToCartesian(l.x,l.y,o,s)}},Object.defineProperty(i,"center",{get:function(){return n.center}}),Object.defineProperty(i,"radius",{get:function(){return t.util.Numeric(e.radius,100)}}),Object.defineProperty(i,"width",{get:function(){return t.util.Numeric(e.width,25)}}),Object.defineProperty(i,"trackclass",{get:function(){return e.trackclass}}),Object.defineProperty(i,"trackstyle",{get:function(){return e.trackstyle}}),i.markers=a,i.scales=o,i.labels=s}]}}]).directive("trackscale",["SVGUtil","$compile",function(t,e){return{restrict:"AE",type:"svg",template:"<g><path></path><g></g></g>",replace:!0,transclude:!0,require:["trackscale","^plasmidtrack"],scope:{interval:"@",vadjust:"@",ticksize:"@",direction:"@",showlabels:"@",labelvadjust:"@",labelclass:"@",labelstyle:"@",tickclass:"@",tickstyle:"@",scaleclick:"&"},link:{pre:function(t,e,n,r){var i=r[0],a=r[1],o=angular.element(e.children()[0]),s=angular.element(e.children()[1]);i.init(o,s,a)},post:function(n,r,i,a,o){var s,u,c;o(n.$parent,function(t){r.append(t)}),s=angular.element(r),u=angular.element(r.children()[0]),t.util.swapProperties(s,u),e(u)(n.$parent),u.on("click",function(t){n.scaleclick({$event:t,$scale:c})}),c=a[0],n.$watchGroup(["interval","vadjust","ticksize","labelvadjust","direction","showlabels","labelstyle","labelclass","tickstyle","tickclass"],function(){c.draw()})}},controller:["$scope",function(e){var n,r,i,a,o=15,s=3;r=this,r.elementtype="trackscale",r.init=function(t,e,o){n=o,n.addScale(r),r.track=n,i=t,a=e},r.draw=function(){var e=r.tickclass,o=r.tickstyle,s=n.center,u=t.svg.path.scale(s.x,s.y,r.radius,r.interval,r.total,r.ticksize);i.attr("d",u),e&&i.attr("class",e),o&&i.attr("style",o),r.showlabels?r.drawLabel():a.empty()},r.drawLabel=function(){function i(t){e.scaleclick({$event:t,$scale:r})}var o,s,u,c=n.center;for(u=t.svg.element.scalelabels(c.x,c.y,r.labelradius,r.interval,r.total),a.empty(),o=0;o<=u.length-1;o+=1)s=angular.element(t.svg.createNode("text")),r.labelclass&&s.attr("class",r.labelclass),r.labelstyle&&s.attr("style",r.labelstyle),s.attr("x",u[o].x),s.attr("y",u[o].y),s.attr("text-anchor","middle"),s.attr("alignment-baseline","middle"),s.text(u[o].text),s.on("click",i),a.append(s)},Object.defineProperty(r,"radius",{get:function(){return(r.inwardflg?n.radius:n.radius+n.width)+(r.inwardflg?-1:1)*r.vadjust+(r.inwardflg?-r.ticksize:0)}}),Object.defineProperty(r,"interval",{get:function(){return t.util.Numeric(e.interval)}}),Object.defineProperty(r,"vadjust",{get:function(){return t.util.Numeric(e.vadjust)}}),Object.defineProperty(r,"ticksize",{get:function(){return t.util.Numeric(e.ticksize,s)}}),Object.defineProperty(r,"inwardflg",{get:function(){return"in"===e.direction?!0:!1}}),Object.defineProperty(r,"total",{get:function(){return n.plasmid.sequencelength}}),Object.defineProperty(r,"showlabels",{get:function(){return"1"===e.showlabels?!0:!1}}),Object.defineProperty(r,"labelvadjust",{get:function(){return t.util.Numeric(e.labelvadjust,o)}}),Object.defineProperty(r,"tickclass",{get:function(){return e.tickclass}}),Object.defineProperty(r,"tickstyle",{get:function(){return e.tickstyle
}}),Object.defineProperty(r,"labelclass",{get:function(){return e.labelclass}}),Object.defineProperty(r,"labelstyle",{get:function(){return e.labelstyle}}),Object.defineProperty(r,"labelradius",{get:function(){return r.radius+r.labelvadjust*(r.inwardflg?-1:1)}})}]}}]).directive("tracklabel",["SVGUtil",function(t){return{restrict:"AE",type:"svg",template:"<text></text>",replace:!0,transclude:!0,require:["tracklabel","^plasmidtrack"],scope:{text:"@",hadjust:"@",vadjust:"@",labelclass:"@",labelstyle:"@",labelclick:"&"},link:{pre:function(t,e,n,r){var i=r[0],a=r[1],o=angular.element(e[0]);i.init(o,a)},post:function(t,e,n,r,i){var a;i(t.$parent,function(t){e.append(t)}),e.attr("text-anchor","middle"),e.attr("alignment-baseline","middle"),e.on("click",function(e){t.labelclick({$event:e,$label:a})}),a=r[0],t.$watchGroup(["text","vadjust","hadjust","labelstyle","labelclass"],function(){a.draw()})}},controller:["$scope",function(e){var n,r,i;r=this,r.elementtype="tracklabel",r.init=function(t,e){n=e,n.addLabel(r),r.track=n,i=t},r.draw=function(){var t=n.center,e=r.labelclass,a=r.labelstyle;i.attr("x",t.x+r.hadjust),i.attr("y",t.y+r.vadjust),i.text(r.text),e&&i.attr("class",e),a&&i.attr("style",a)},Object.defineProperty(r,"center",{get:function(){return n.center}}),Object.defineProperty(r,"text",{get:function(){return e.text}}),Object.defineProperty(r,"labelclass",{get:function(){return e.labelclass}}),Object.defineProperty(r,"labelstyle",{get:function(){return e.labelstyle}}),Object.defineProperty(r,"hadjust",{get:function(){return t.util.Numeric(e.hadjust,0)}}),Object.defineProperty(r,"vadjust",{get:function(){return t.util.Numeric(e.vadjust,0)}}),Object.defineProperty(r,"dimensions",{get:function(){return i[0].getBBox()}})}]}}]).directive("trackmarker",["SVGUtil","$compile",function(t,e){return{restrict:"AE",type:"svg",template:"<g><path></path></g>",replace:!0,transclude:!0,require:["trackmarker","^plasmidtrack"],scope:{start:"@",end:"@",vadjust:"@",wadjust:"@",markergroup:"@",arrowstartlength:"@",arrowstartwidth:"@",arrowstartangle:"@",arrowendlength:"@",arrowendwidth:"@",arrowendangle:"@",markerclass:"@",markerstyle:"@",markerclick:"&"},link:{pre:function(t,e,n,r){var i=r[0],a=r[1],o=angular.element(e.children()[0]);i.init(o,a)},post:function(n,r,i,a,o){var s,u,c=a[0];o(n.$parent,function(t){r.append(t)}),s=angular.element(r),u=angular.element(r.children()[0]),t.util.swapProperties(s,u),e(u)(n.$parent),u.on("click",function(t){n.markerclick({$event:t,$marker:c})}),n.$watchGroup(["start","end","vadjust","wadjust","markergroup","markerclass","markerstyle","arrowstartlength","arrowstartwidth","arrowstartangle","arrowendlength","arrowendwidth","arrowendangle"],function(){c.draw()})}},controller:["$scope",function(e){var n,r,i,a=[];r=this,r.elementtype="trackmarker",r.init=function(t,e){n=e,n.addMarker(r),i=t,r.track=n},r.draw=function(){var t=r.markerclass,e=r.markerstyle;i.attr("d",r.getPath()),t&&i.attr("class",t),e&&i.attr("style",e),angular.forEach(a,function(t){t.draw()})},r.addMarkerLabel=function(t){a.push(t)},r.getPath=function(){var e=n.center,i=r.angle,a=r.radius;return t.svg.path.arc(e.x,e.y,a.inner,i.start,i.end,r.width,r.arrowstart,r.arrowend)},r.getPosition=function(e,i,a,o){var s,u,c,l,f,h="start",d="end",p="inner",$="outer";if(s=n.center,l=r.radius,f=r.angle,e=t.util.Numeric(e),i=t.util.Numeric(i),void 0!==o&&void 0!==a){switch(o){case p:u=l.inner+i;break;case $:u=l.outer+i;break;default:u=l.middle+i}switch(a){case h:c=f.start+e;break;case d:c=f.end+e;break;default:c=f.middle+e}return t.util.polarToCartesian(s.x,s.y,u,c)}return u={outer:l.outer+i,inner:l.inner+i,middle:l.middle+i},c={begin:f.start+e,end:f.end+e,middle:f.middle+e},{outer:{begin:t.util.polarToCartesian(s.x,s.y,u.outer,c.begin),middle:t.util.polarToCartesian(s.x,s.y,u.outer,c.middle),end:t.util.polarToCartesian(s.x,s.y,u.outer,c.end)},middle:{begin:t.util.polarToCartesian(s.x,s.y,u.middle,c.begin),middle:t.util.polarToCartesian(s.x,s.y,u.middle,c.middle),end:t.util.polarToCartesian(s.x,s.y,u.middle,c.end)},inner:{begin:t.util.polarToCartesian(s.x,s.y,u.inner,c.begin),middle:t.util.polarToCartesian(s.x,s.y,u.inner,c.middle),end:t.util.polarToCartesian(s.x,s.y,u.inner,c.end)}}},r.fireClick=function(t){e.markerclick({$event:t.$event,$marker:t.$marker})},Object.defineProperty(r,"center",{get:function(){return n.center}}),Object.defineProperty(r,"radius",{get:function(){return{inner:n.radius+r.vadjust,outer:n.radius+r.vadjust+r.width,middle:n.radius+r.vadjust+r.width/2}}}),Object.defineProperty(r,"angle",{get:function(){var i,a,o,s;return i=r.start/n.plasmid.sequencelength*360,s=e.end||e.start,a=t.util.Numeric(s)/n.plasmid.sequencelength*360,a+=i>a?360:0,o=i+(a-i)/2,{start:i,middle:o,end:a}}}),Object.defineProperty(r,"vadjust",{get:function(){return t.util.Numeric(e.vadjust)}}),Object.defineProperty(r,"wadjust",{get:function(){return t.util.Numeric(e.wadjust)}}),Object.defineProperty(r,"width",{get:function(){return n.width+r.wadjust}}),Object.defineProperty(r,"start",{get:function(){return t.util.Numeric(e.start)}}),Object.defineProperty(r,"end",{get:function(){return t.util.Numeric(e.end)}}),Object.defineProperty(r,"arrowstart",{get:function(){return{width:t.util.Numeric(e.arrowstartwidth),length:t.util.Numeric(e.arrowstartlength),angle:t.util.Numeric(e.arrowstartangle)}}}),Object.defineProperty(r,"arrowend",{get:function(){return{width:t.util.Numeric(e.arrowendwidth),length:t.util.Numeric(e.arrowendlength),angle:t.util.Numeric(e.arrowendangle)}}}),Object.defineProperty(r,"markergroup",{get:function(){return e.markergroup}}),Object.defineProperty(r,"markerclass",{get:function(){return e.markerclass}}),Object.defineProperty(r,"markerstyle",{get:function(){return e.markerstyle}}),Object.defineProperty(r,"sequence",{get:function(){var t=r.track.plasmid.sequence;return r.start>r.end?t.substring(r.start-1,t.length-1)+t.substring(0,r.end-1):t.substring(r.start-1,r.end-1)}}),r.labels=a}]}}]).directive("markerlabel",["SVGUtil","$compile",function(t,e){return{restrict:"AE",type:"svg",transclude:!0,template:'<g><path></path><path id="" style="fill:none;stroke:none"></path><text></text></g>',require:["markerlabel","^trackmarker"],replace:!0,scope:{text:"@",valign:"@",vadjust:"@",halign:"@",hadjust:"@",type:"@",showline:"@",linestyle:"@",lineclass:"@",labelstyle:"@",labelclass:"@",linevadjust:"@",labelclick:"&"},link:{pre:function(t,e,n,r){var i=r[0],a=r[1],o=angular.element(e[0]),s=angular.element(e.children()[0]),u=angular.element(e.children()[1]),c=angular.element(e.children()[2]);i.init(c,o,u,s,a)},post:function(n,r,i,a,o){o(n.$parent,function(t){r.append(t)});var s=a[0],u=a[1],c=angular.element(r),l=angular.element(r.children()[2]);l.attr("text-anchor","middle"),l.attr("alignment-baseline","middle"),t.util.swapProperties(c,l),e(l)(n.$parent),i.labelclick?l.on("click",function(t){n.labelclick({$event:t,$label:s})}):l.on("click",function(t){u.fireClick({$event:t,$marker:u})}),n.$watchGroup(["text","type","valign","vadjust","halign","hadjust","showline","linevadjust","linestyle","labelclass","labelstyle"],function(){s.draw()})}},controller:["$scope","$compile",function(e,n){var r,i,a,o,s,u,c,l;i=this,i.elementtype="markerlabel",i.init=function(t,e,n,s,u){var f="TPATH"+(Math.random()+1).toString(36).substring(3,7);r=u,r.addMarkerLabel(i),i.marker=r,a=t,o=n,c=s,l=e,o.attr("id",f)},i.draw=function(){var t,l,f,h,d,p="middle",$="inner",g="outer",m="start",v="end",y=0,b=0,w=i.labelclass,x=i.labelstyle;if(w&&a.attr("class",w),x&&a.attr("style",x),"path"===i.type)switch(a.attr("x",""),a.attr("y",""),s||(u=document.createElementNS("http://www.w3.org/2000/svg","textPath"),u.setAttributeNS("http://www.w3.org/1999/xlink","href","#"+o.attr("id")),s=angular.element(u),n(s)(e),a.empty(),a.append(s)),u.textContent=i.text,y=window.getComputedStyle(a[0]).fontSize.replace("px",""),b=i.valign===g?0:i.valign===$?Number(y||0):Number(y||0)/2,o.attr("d",i.getPath(i.hadjust,i.vadjust-b,i.halign,i.valign)),i.halign){case m:a.attr("text-anchor","start"),s[0].setAttribute("startOffset","0%");break;case v:a.attr("text-anchor","end"),s[0].setAttribute("startOffset","100%");break;default:a.attr("text-anchor","middle"),s[0].setAttribute("startOffset","50%")}else s&&(s.remove(),s=null),t=r.getPosition(i.hadjust,i.vadjust,i.halign,i.valign),a.attr("x",t.x),a.attr("y",t.y),a.text(i.text);i.showlineflg?(l=r.getPosition(i.hadjust,i.vadjust+i.linevadjust,i.halign,i.valign),h=r.getPosition(),d=i.valign===$?h.inner:i.valign===p?h.middle:h.outer,f=i.halign===m?d.begin:i.halign===v?d.end:d.middle,c.attr("d",["M",l.x,l.y,"L",f.x,f.y].join(" ")),i.linestyle||i.lineclass||c.attr("style","stroke:#000"),i.linestyle&&c.attr("style",i.linestyle),i.lineclass&&c.attr("class",i.lineclass)):c.removeAttr("d")},i.getPath=function(e,n,i,a){var o,s,u,c,l,f="inner",h="outer",d="start",p="end",$=r.center;switch(s=r.radius,a){case f:o=s.inner;break;case h:o=s.outer;break;default:o=s.middle}switch(u=r.angle,i){case d:c=u.start,l=u.start+359.99;break;case p:c=u.end+1,l=u.end;break;default:c=u.middle+180.05,l=u.middle+179.95}return t.svg.path.arc($.x,$.y,o+Number(n||0),c+Number(e||0),l+Number(e||0),1)},Object.defineProperty(i,"showlineflg",{get:function(){return"1"===e.showline?!0:!1}}),Object.defineProperty(i,"halign",{get:function(){return e.halign||"middle"}}),Object.defineProperty(i,"valign",{get:function(){return e.valign||"middle"}}),Object.defineProperty(i,"hadjust",{get:function(){return t.util.Numeric(e.hadjust)}}),Object.defineProperty(i,"vadjust",{get:function(){return t.util.Numeric(e.vadjust)}}),Object.defineProperty(i,"type",{get:function(){return e.type}}),Object.defineProperty(i,"linevadjust",{get:function(){return t.util.Numeric(e.linevadjust)}}),Object.defineProperty(i,"labelclass",{get:function(){return e.labelclass}}),Object.defineProperty(i,"labelstyle",{get:function(){return e.labelstyle}}),Object.defineProperty(i,"linestyle",{get:function(){return e.linestyle}}),Object.defineProperty(i,"lineclass",{get:function(){return e.lineclass}}),Object.defineProperty(i,"text",{get:function(){return e.text}})}]}}]).directive("svgelement",["SVGUtil",function(){return{restrict:"AE",template:function(t,e){return"<"+e.type+"></"+e.type+">"},type:"svg",replace:!0,transclude:!0,require:["^plasmid"],scope:{},link:function(t,e,n,r,i){i(t.$parent,function(t){e.append(t)})}}}])}(),function(){"use strict";angular.element(document).ready(function(){angular.bootstrap(document,["app"])})}();